Sql server 如何查询名称类似于保留字的列?
可能重复:Sql server 如何查询名称类似于保留字的列?,sql-server,tsql,Sql Server,Tsql,可能重复: 当我运行此操作时,SQL Server会说“关键字'Column'附近的语法不正确”您可以将列名括在方括号中,因此: SELECT thing.[Column] FROM mytable thing 您还可以使用双引号(我相信这是更标准的SQL语法): 请注意,双引号仅在QUOTED_IDENTIFIER处于启用状态时有效,但默认情况下它处于启用状态 这是一个类似这样的例子: SELECT [thing].[Column] FROM [mytable] AS [thing] 每
当我运行此操作时,SQL Server会说“关键字'Column'附近的语法不正确”您可以将列名括在方括号中,因此:
SELECT thing.[Column] FROM mytable thing
您还可以使用双引号(我相信这是更标准的SQL语法):
请注意,双引号仅在QUOTED_IDENTIFIER处于启用状态时有效,但默认情况下它处于启用状态
这是一个类似这样的例子:
SELECT [thing].[Column] FROM [mytable] AS [thing]
每次都要尝试使用这些括号,因为您永远不知道系统何时会迁移到新版本,以及新版本是否没有新的保留字集。快速修复方法是使用
[
和]
围绕列名,但真正的解决方案是不使用保留字并将列名更改为其他名称。
SELECT thing."Column" FROM mytable thing
SELECT [thing].[Column] FROM [mytable] AS [thing]