【问题标题】:SQL Server: Maximum character length of object namesSQL Server:对象名称的最大字符长度
【发布时间】:2011-08-14 01:55:01
【问题描述】:

SQL Server 2008 中对象名称(例如约束、列)的最大字符长度是多少?

【问题讨论】:

    标签: sql-server sql-server-2008 tsql


    【解决方案1】:

    128 个字符。这是 sysname 数据类型 (nvarchar(128)) 的最大长度。

    【讨论】:

      【解决方案2】:

      是的,它是 128,除了 临时表,其名称最多只能有 116 个字符。 这是完美的explained here

      并且可以使用之前博文中包含的以下脚本轻松进行验证:

      DECLARE @i NVARCHAR(800)
      SELECT @i = REPLICATE('A', 116)
      SELECT @i = 'CREATE TABLE #'+@i+'(i int)'
      PRINT @i
      EXEC(@i)
      

      【讨论】:

      • 我认为“comprobation”可能是指“test”或“verification”。我说的对吗?
      【解决方案3】:

      您还可以使用此脚本来了解更多信息:

      EXEC sp_server_info
      

      结果会是这样的:

      attribute_id | attribute_name        | attribute_value
      -------------|-----------------------|-----------------------------------
                 1 | DBMS_NAME             | Microsoft SQL Server
                 2 | DBMS_VER              | Microsoft SQL Server 2012 - 11.0.6020.0
                10 | OWNER_TERM            | owner
                11 | TABLE_TERM            | table
                12 | MAX_OWNER_NAME_LENGTH | 128
                13 | TABLE_LENGTH          | 128
                14 | MAX_QUAL_LENGTH       | 128
                15 | COLUMN_LENGTH         | 128
                16 | IDENTIFIER_CASE       | MIXED
                 ⋮  ⋮                       ⋮
                 ⋮  ⋮                       ⋮
                 ⋮  ⋮                       ⋮
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-05-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-14
        • 2010-09-30
        • 2022-10-04
        相关资源
        最近更新 更多