SQL Server命名尾随空间是否不敏感?

Raj*_*ore 2 sql t-sql sql-server

我在我的OLTP中有一个Location表,在对它编码SSIS时,我找到了一个LocationCode列名,其中有一个尾随空格.

Create Table Location
(
    [LocationId] INT IDENTITY (1, 1)
    [LocationCode ] INT
)
Run Code Online (Sandbox Code Playgroud)

请注意,LocationCode列名称具有尾随空格.

然而,以下代码可行.

SELECT LocationCode
From Location
Run Code Online (Sandbox Code Playgroud)

事实上,我们找到了存储过程中使用尾随空间的几个地方,并且它继续工作.

这怎么可能?

Mat*_*ish 5

如果在命名对象时使用分隔标识符,并且对象名称包含尾随空格,则SQL Server将存储不带尾随空格的名称.

http://msdn.microsoft.com/en-us/library/ms176027%28SQL.90%29.aspx

ps定界标识符到处都是代码味道 - 它们应该使用SPARINGLY,而不是每个标识符.