在引用表中重命名DB列(违规?)

时间:2009-02-02 18:26:51

标签: database naming conventions acid

说我有这张桌子:

Person table
--------------
PersonId

Address table
------------
AddressId
PersonAddressId

其中PersonAddressId是PersonId和外键。重命名外键时是否存在任何类型的数据库冲突?当他们有不同的名字时,可能会变得非常困惑。

2 个答案:

答案 0 :(得分:1)

在可能的情况下,将外键列命名为与其引用的主键列相同通常很有帮助。

当然,有时候这是不可能的:

  • Address中的两列可能都是Person的外键,因此显然您无法为两列PersonId命名。
  • 某些表包含自身的外键,例如Employee.manager_id可以是对Employee.employee_id的引用。同样,在此方案中,您不能将列命名为与引用的主键相同。

SQL中没有严格的命名约定。建议的元数据命名约定的一个来源是ISO 11179

答案 1 :(得分:0)

同意,这就是为什么约定将PersonAddressId命名为PersonId。