T-SQL列名中允许哪些特殊字符?

时间:2009-06-05 08:48:51

标签: tsql naming-conventions naming

我想知道在T-SQL,MSSQL中允许在列名中使用哪些特殊字符。所以我知道我可以使用字母和数字,但是其他字符可以使用括号[]来引用此列吗?

1 个答案:

答案 0 :(得分:31)

来自MSDN

第一个字符必须是以下之一:

  • Unicode标准3.2定义的字母。字母的Unicode定义包括从a到z,从A到Z的拉丁字符,以及来自其他语言的字母字符。
  • 下划线(_),符号(@)或数字符号(#)。

后续字符可包括以下内容:

  • Unicode标准3.2。
  • 中定义的字母
  • 来自Basic Latin或其他国家/地区脚本的十进制数字。
  • at符号,美元符号($),数字符号或下划线。

标识符不能是Transact-SQL保留字。 SQL Server保留保留字的大写和小写版本。

不允许嵌入空格或特殊字符。

不允许使用补充字符。

修改

参考NinthSense:规格也说:

标识符开头的某些符号在SQL Server中具有特殊含义。以at符号开头的常规标识符始终表示局部变量或参数,不能用作任何其他类型对象的名称。

并且可以无错误地执行此语句:

create table #t (
  #oid int ,
  äß int,
  ßdid varchar(10),
  _data varchar(10)
)