COL_LENGTH (Transact-SQL)

返回列的定义长度(以字节为单位)。

适用范围:SQL Server(SQL Server 2008 至当前版本),Windows Azure SQL Database(初始版本至当前版本)。

主题链接图标 Transact-SQL 语法约定

语法

COL_LENGTH ( 'table' , 'column' )

参数

  • ' table '
    要确定其列长度信息的表的名称。 table 是 nvarchar 类型的表达式。

  • ' column '
    要确定其长度的列的名称。 column 是类型为 nvarchar 的表达式。

返回类型

smallint

异常

出现错误时或调用方没有查看对象的权限时,将返回 NULL。

在 SQL Server 中,用户只能查看其拥有的安全对象的元数据,或者已对其授予权限的安全对象的元数据。 也就是说,如果用户对该对象没有任何权限,则某些会产生元数据的内置函数(如 COL_LENGTH)可能返回 NULL。 有关详细信息,请参阅元数据可见性配置

注释

对于使用 max 说明符 (varchar(max)) 声明的 varchar 类型的列,COL_LENGTH 将返回值 –1。

示例

以下示例将显示类型为 varchar(40) 和 nvarchar(40) 的列的返回值。

USE AdventureWorks2012;
GO
CREATE TABLE t1(c1 varchar(40), c2 nvarchar(40) );
GO
SELECT COL_LENGTH('t1','c1')AS 'VarChar',
      COL_LENGTH('t1','c2')AS 'NVarChar';
GO
DROP TABLE t1;

下面是结果集:

VarChar     NVarChar
40          80

请参阅

参考

表达式(Transact-SQL)

元数据函数 (Transact-SQL)

COL_NAME (Transact-SQL)

COLUMNPROPERTY (Transact-SQL)