2015-02-10 55 views
2

虽然这个话题已经被触及很多次,我再次写下它来分享我的经验。在开始项目之前,我一直在寻找数据库的命名约定,并阅读我在本网站上找到的建议。如果您愿意,我使用惯例Pascal或骆驼。数据库,表格和列命名约定再次

MyTable 
MyColumnName 

首先,事实证明,该项目是不可移植的数据库写的目录数据从表的名称来名,和各种操作系统都在小写和大写字母不同的解释文件和目录的名称。 我将约定更改为小写的下划线命名约定。

my_table 
my_column_name 

看来问题解决了,但并不完全。还有另外一个问题:关键字。 这是一个excerpt讨论当我在我的项目中发现问题时遇到的问题。简而言之,框架不会引用关键字,因为它会降低数据库性能。 所以另一个约定的改变。

_my_table 
_my_column_name 
_reserved_keyword 

我的问题是:对命名约定有多少更改等着我? 我希望这篇文章能够帮助他人克服我不得不面对的问题。

+0

帕斯卡和骆驼是不同的。帕斯卡有一个大写字母,骆驼有一个小写字母。 https://msdn.microsoft.com/en-us/library/x2dbyw72%28v=vs.71%29.aspx – Jodrell 2015-02-10 09:29:44

+0

我不认为引用标识符会降低性能,您是否有任何证据?显然这取决于引擎的实现 – Jodrell 2015-02-10 09:32:37

+0

我不关心数据库性能的讨论,但这实际上影响了我的性能。 – croonx 2015-02-10 09:39:20

回答

0

命名约定不是必须的,它只是一个推荐。你应该明智地指定表,列等名称,思考它们,因为没有命名约定。 请勿使用保留字,非字母字符等,并且您的问题已消失。