括号在sql语句中做了什么?
例如,在声明中:
insert into table1 ([columnname1], columnname2) values (val1, val2)
另外,如果表名在括号中,它会怎么做?
alb*_*ein 43
[]标记了标识符的分隔符,因此如果您的列名称包含Order Qty等空格,则需要将其与[]括起来,如:
select [Order qty] from [Client sales]
Run Code Online (Sandbox Code Playgroud)
它们也是为了逃避用作标识符的保留关键字
Bil*_*win 13
这是用于"分隔标识符"的Microsoft SQL Server非标准语法.SQL支持标识符的分隔符,以允许表名,列名或其他元数据对象包含以下内容:
Microsoft SQL Server使用方括号,但这不是SQL用于分隔标识符的语法标准.标准地说,双引号应该用于分隔符.
在Microsoft SQL Server中,您可以启用模式以使用标准双引号作为分隔符,如下所示:
SET QUOTED_IDENTIFIER ON;
Run Code Online (Sandbox Code Playgroud)
它们旨在转义保留关键字或无效列标识符.
CREATE TABLE test
(
[select] varchar(15)
)
INSERT INTO test VALUES('abc')
SELECT [select] FROM test
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
42354 次 |
最近记录: |