sql语句中方括号[]的用途是什么?

时间:2020-03-05 18:50:21  来源:igfitidea点击:

我注意到Visual Studio 2008在sql中的列名周围放置了方括号。支架有什么优势吗?当我编写T-SQL代码时,我再也不会打扰他们。

例子:
视觉工作室:
选择[column1],[column2]等...

我自己的方式:
SELECT column1,column2等...

解决方案

回答

当列名是保留字时,可以使用方括号。

如果我们是通过编程方式从不受控制的列名集合中生成SQL语句,则可以始终使用方括号来避免出现问题。

回答

如果我们在列名称或者标识符中使用关键字或者特殊字符,则必须使用方括号。我们可以将一栏命名为First Name(带有空格),但是每次引用该列时都需要使用方括号。

较新的工具将它们添加到各处,以防万一或者保持一致性。

回答

列名可以包含字符和保留字,这会使查询执行引擎感到困惑,因此始终在其周围放置方括号可防止这种情况发生。我想比检查一个问题然后处理它更容易。

回答

我相信它将它们添加到那里是为了保持一致……仅当我们在列名称中使用空格或者特殊字符时才需要使用它们,但是在IDE生成SQL时始终将它们包括在内会更清洁。

回答

如果列与SQL关键字具有相同的名称或者在其中包含空格,则它们很方便。

例子:

create table test ( id int, user varchar(20) )

不好了!关键字"用户"附近的语法不正确。
但是这个:

create table test ( id int, [user] varchar(20) )

工作正常。

回答

如果我们(出于某种原因)使用带有某些字符的列名,则它们很有用。

Select First Name From People

将不起作用,但在列名周围放置方括号将起作用

Select [First Name] From People

简而言之,这是一种显式声明对象名称的方法。列,表,数据库,用户或者服务器。