php - 国家名称在数据库中存储为整数/数字是否比包含其名称的字符串更好?

标签 php mysql ruby-on-rails database sphinx

我想知道,因为我正在处理搜索表单并使用 thinking sphinx 和过滤属性,似乎只接受整数,但我的国家/地区作为包含其名称的字符串存储在数据库中。

所以我将创建自己的国家/地区列表,其中包含要在选择菜单中显示的字符串,以及存储在数据库中的整数值。只是想知道为什么我正在使用的 gem(ruby on rails)的开发者决定创建一个只包含字符串的数组。

这个问题不是特定于编程语言的。数据库就是数据库。

亲切的问候。

最佳答案

我建议将这些国家/地区放在一个单独的表中,并为每个国家/地区分配一个唯一的 ID。它没有坏处,但确实使数据库结构更加灵活。通过这种方式,您可以在需要时添加更多与国家/地区相关的信息,并在需要时将其他表格关联到它们。

按字符串查找行甚至可能是一个性能问题。查询另一个表以查找国家/地区 ID 应该不会造成太大压力。

关于php - 国家名称在数据库中存储为整数/数字是否比包含其名称的字符串更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9053551/

相关文章:

ruby-on-rails - Ruby on Rails,一种形式的两种模型

php - 代码重用 : Common Functions - Laravel

php - mysql COUNT 与 UNION php

PHP 将 SQL 日期转换为显示为数字字符串的不同格式

ruby-on-rails - 如何制定一种通用方法来检查 Tic-Tac-Toe 中的赢家

ruby-on-rails - 正则表达式挑战

javascript - WordPress 主题预览器?从哪儿开始?

php - 循环从 1 到 100 的数字,每 10 个数字将数字除以 10

php - 密码字符限制

php - 无法让 mysql_insert_id() 工作