数据库列命名

时间:2009-11-28 22:46:45

标签: database naming-conventions

假设有一个名为AIRPORT的表,我必须在两个命名约定之间进行选择:

  • 命名AP_CODE,AP_NAME等属性
  • 或者将它们命名为CODE,NAME

问题是,遵循第一种方式或使用同义词(即AP)和AP.CODE等参考属性是否更高效

3 个答案:

答案 0 :(得分:2)

在任何常用的RBDMS中,不太可能对性能产生任何重大影响。选择将基于可读性和个人风格偏好。我建议不要使用前缀,因为它通常只是人们训练自己调出的噪音。

答案 1 :(得分:1)

确实没有区别,所以选择清晰度。我最近一直在使用Oracle,它有32个字符的名称长度限制,所以我尽量避免使用属性上的表名前缀,而是使用表别名。 (这也使得更改表名更加容易。)

答案 2 :(得分:0)

我只使用CODE和NAME。就个人而言,我认为它只是笨拙而且根本没有任何好处。

如果您在其他表格中有CODE和NAME,那么您必须指定AIRPORT.CODEOTHERTABLE.CODE以消除歧义

如果使用WITH SCHEMABINDING(至少是SQL服务器),则必须限定列名

因此,如果您使用了列前缀

,则最终会得到AIRPORT.AP_CODE

作为类比,如果您考虑OO对象属性,则不要为它们添加前缀,是吗??

准确地回答,绝对没有效率增益。