在本文中,我将介绍 SQL 2008 中的方括号。如果表列名中有特殊字符或者关键字,或者列名之间有空格,则使用方括号。这些可以用于数据库、表或者视图。例如,您的表名想要 Employee Details,然后它会给出错误消息,例如“'Details' 附近的语法不正确”。方括号增加了一致性。下面借助示例讨论一些与方括号相关的问题。
SQL Server方括号例子说明
1.表名之间的空格
让我们举一个实际的例子。让我们创建一个表,其名称类似于员工详细信息,例如:员工和详细信息之间的空间。输入以下代码:
create table Employee Details ( id int, name varchar(15), city varchar (15) )
现在执行整个代码。
将会报错。
现在将Employee Details放在方括号下。并再次执行整个代码。
create table [Employee Details] ( id int, name varchar(15), city varchar (15) )
表将创建成功。
2.列名是SQL关键字
另一个问题是,如果列名与预定义的 SQL 关键字相同,那么我们可以将列名放在方括号下。例如,我们创建一个名为 Student Details 的表,并以“from”(SQL 关键字)作为列名并执行以下代码。
create table [Student Details] ( Roll Number int, Name varchar(10), from varchar (10)--from是sql的关键字 )
会出现错误,例如“关键字'from'附近的语法不正确” "Incorrect syntax near the keyword 'from'".。
现在将“from”列名称放在方括号中。并再次执行整个代码:
create table [Student Details] ( Roll Number int, Name varchar(10), [from] varchar (10)-- from是sql的关键字 )
现在就没有语法错误了
3. 列名中有特殊字符
有时列名包含特殊字符。例如:
create table [StudentDetail] ( Roll_Num[ber int, Name varchar(10), [from] varchar (10)--here from is SQL keyword )
执行上述代码时会显示错误消息“'varchar' 附近的语法不正确 Incorrect syntax near 'varchar'”。
现在将 Roll_Num[ber
放在方括号中。并再次执行整个代码就没有问题。
create table [StudentDetail] ( [Roll_Num[ber] int, Name varchar(10), [from] varchar (10)--here from is SQL keyword )
日期:2020-06-02 22:18:09 来源:oir作者:oir