字段命名问题

时间:2010-09-16 04:37:13

标签: database naming

如何命名系统范围内使用的colunms。例如城市。 在城市查找表中,colunm称为city_id,city_name。现在城市用于其他地方,比如事件 - 我称之为event_city,它引用了city_name。然后在用户配置文件中有user_city再次执行相同操作。这些都应该根据表格被称为相同或不同,即使它们都是一样的吗?

4 个答案:

答案 0 :(得分:3)

您应该使用引用city_id的Cities表的外键引用。

无需更改其他表中的名称,只需坚持使用city_id外键即可。

答案 1 :(得分:2)

来自Omar Khayyam的Rubaiyat:

  当年轻人热切地兴奋时,我自己   博士和圣徒,并听到了伟大的论据
      关于它和关于;但永远的   和我去的门一样出来。

关于如何做到这一点有很多讨论,很少有人同意。选择合理的方案并坚持下去 - 一致性可能是最重要的。

我可能会选择:

  • 城市(名称,......)
  • 活动(......,城市,......)
  • UserProfile(...,City,...)

如果在一个表中有两个与City相关的列,我只会使用限定名称:

  • UserDetails(...,Home_City,...,Work_City,...)

顺便说一句,我放弃了“城市ID”专栏,因为你好像加入了城市名称。但是,使用CityID可能会更好,使用City ID并让其他表加入。对于以美国为中心的示例,这允许相同的城市名称显示在multiple states中。

答案 2 :(得分:1)

您的命名约定究竟与您坚持使用它的重要性不同,但我不建议在事件表event_city上命名您的“城市名称”字段。相反,我建议使用city_name,因为它更清晰。很明显,它是事件的城市名称,因为它位于事件表中。

答案 3 :(得分:1)

我会将event_city更改为city_id。

(我假设event_city将是对城市的引用,并匹配city_id列中的值。)