2009-11-28 60 views
1

让我们假设有一个名为AIRPORT表,我有两个命名约定之间进行选择:数据库列命名

  • 命名属性,如AP_CODE,AP_NAME等
  • 或他们的名字一样,CODE ,NAME

的问题是它是否是更高效的跟随第一方式或使用同义词(即AP)和参考属性等AP.CODE?

回答

1

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

2

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

0

我只是使用CODE和NAME。就我个人而言,我认为这很笨拙,并没有增加任何好处。

如果你有其他表编码,名称,然后你必须指定AIRPORT.CODEOTHERTABLE.CODE如果使用WITH SCHEMABINDING删除歧义

(SQL服务器至少)必须限定列名

所以,你会最终AIRPORT.AP_CODE如果使用列前缀

打个比方,如果你想一个面向对象的对象属性,你不前缀他们,你...?

准确地说,完全没有效率增益。