COL_LENGTH (Transact-SQL)

适用于: SQL Server Azure SQL 数据库 Azure SQL 托管实例

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

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 AdventureWorks2022;  
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)