【发布时间】:2018-01-06 08:34:41
【问题描述】:
我有一个名为“位置”的表字段。当我在存储过程中使用该字段名称时,它是蓝色的。我理解(错误地?)这表明它是一个保留字。然而,我已经查看了 SQL Server 当前和未来的保留字列表,但未列出位置。出于某种原因,使用 Location 作为表字段名称是否存在问题?
【问题讨论】:
标签: sql-server
我有一个名为“位置”的表字段。当我在存储过程中使用该字段名称时,它是蓝色的。我理解(错误地?)这表明它是一个保留字。然而,我已经查看了 SQL Server 当前和未来的保留字列表,但未列出位置。出于某种原因,使用 Location 作为表字段名称是否存在问题?
【问题讨论】:
标签: sql-server
这不是保留字。
exists in the grammar though是一个关键词。
-- Create a new external table
CREATE EXTERNAL TABLE [ database_name . [ schema_name ] . | schema_name. ] table_name
( <column_definition> [ ,...n ] )
WITH (
LOCATION = 'folder_or_filepath',
DATA_SOURCE = external_data_source_name,
FILE_FORMAT = external_file_format_name
[ , <reject_options> [ ,...n ] ]
)
[;]
因此 SSMS 会将其突出显示为关键字。将其用作标识符名称没有任何不良影响 - 除了在标识符名称未用方括号或引号引起来时,可能会发现语法突出显示会分散注意力。
【讨论】:
使用 Location 作为表字段名称是否有问题?
完全没有问题。为了安全起见,您可以在列名周围使用方括号,然后您甚至可以使用保留字。
【讨论】: