2012-09-09 171 views
1

对不起,如果这是一个愚蠢的问题还是我的标题是有点错误的措辞,但在我的任务创建我的数据库中,我看到他们会喜欢Returns名和Address分别作为表名和表键名。最佳实践

它编译没有问题:

CREATE TABLE Returns 
(
.. 
) 

CREATE TABLE Customers 
(
.. 
Address varchar(30) NOT NULL, 
.. 
) 

,但我看到了我的MS SQL Server 2008 SP1语法编辑器生成的单词ReturnsAddress相同的颜色作为CREATE TABLE声明(蓝),因此我猜这些是SQL语言的关键词。

所以这是一个很好的命名约定,或者我应该改用类似于: CustomerAddressProductReturns

+0

是选择真的那么重要吗?在Python中,人们将变量'class_'或'klass'或'cls'而不是'class'命名为关键字。 –

+0

我唯一的建议是保持表名单 - 不是复数。 – Randy

+0

@DietrichEpp我不确定我是否因为基于Java和C#的背景而来,我惊讶地发现它甚至被编译了?这是不是真的适用这个问题?我可以命名表和键与关键字相同吗? –

回答

3

阅读Reserved Keywords在MSDN SQL-Server页面中。

RETURNS是在未来关键词清单其中:

以下关键字可以在SQL Server的未来版本中保留作为新的功能来实现。考虑避免使用这些词作为标识符。

+0

+1谢谢你的具体证据是什么,我需要的,所以我想它最好避免使用(当我可以接受) –