php – 国家名称是否更好地存储为数据库中的整数/数字而不是包含其名称的字符串?

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

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

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

亲切的问候.

解决方法:

我建议将这些国家放在一个单独的表中,并为每个国家分配一个唯一的ID.它没有任何害处,但确实使数据库结构更加灵活.这样,您可以根据需要添加与国家/地区相关的更多信息,并在需要时将其他表与其相关联.

通过字符串查找行甚至可能是性能问题.查询另一个表来查找国家ID不应该产生太大的压力.

上一篇:在Java中运行连续批处理


下一篇:全文检索引擎sphinx 与 Elasticsearch 索引速度对比