【问题标题】:What special characters are allowed in T-SQL column name?T-SQL 列名中允许使用哪些特殊字符?
【发布时间】:2009-06-05 08:48:51
【问题描述】:

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

【问题讨论】:

    标签: tsql naming-conventions naming


    【解决方案1】:

    来自MSDN

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

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

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

    • Unicode 标准 3.2 中定义的字母。
    • 来自基本拉丁文或其他国家文字的十进制数字。
    • at 符号、美元符号 ($)、数字符号或下划线。

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

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

    不允许使用补充字符。

    编辑

    提到 NinthSense:规格还说:

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

    并且这条语句可以正常执行:

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

    【讨论】:

    • 这是通用的...用于“标识符”。不特定于“列名”。想想@,#
    猜你喜欢
    • 2010-12-10
    • 1970-01-01
    • 2015-02-04
    • 2020-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-30
    相关资源
    最近更新 更多