2013-04-10 66 views
2

我正在使用SQL Server作为后端的传统应用程序。命名SQL Server登录的限制?

应用程序创建SQL Server登录过,在代码中,我发现这个检查:

1)(SQL Server)的登录名不能为空

2)它不能由单一的CHAR

3)它不能以数字(如“1test”开始是不是允许的名称)

我没有找到相应的文件。可能这些是旧版本的限制吗?目前我只支持2008R2。

谢谢。

+2

http://msdn.microsoft.com/en-gb/library/ms189751.aspx – muhmud 2013-04-10 13:22:37

+0

谢谢,所以login_name(在SQL身份验证的情况下)应该是标识符,所以:http://msdn.microsoft.com/ library/ms175874.aspx到位,关于从我最后一个链接引用的数字开始“以数字符号开头的标识符表示临时表或过程”,可能是这是原因ò无论如何,登录“1test”工作细 – LaBracca 2013-04-10 13:34:30

+0

使用双引号会创建一个分隔标识符,该标识符不必遵守标识符的规则,并且在引用时必须始终使用分隔符。您也可以使用方括号作为分隔符。 – muhmud 2013-04-10 13:41:15

回答

0

可能是最初的代码应用程序的开发者试图坚持他在非100%匹配的方式命名标识符(http://msdn.microsoft.com/library/ms175874.aspx)约定。

这只是一个hipothesis,对别人也往往需要问自己编写的遗留代码工作时,“他为什么这样做?”主要是“为什么他不写一个简短的评论?”