COL_LENGTH (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Esta función devuelve la longitud definida de una columna, en bytes.

Convenciones de sintaxis de Transact-SQL

Sintaxis

COL_LENGTH ( 'table' , 'column' )   

Nota:

Para ver la sintaxis de Transact-SQL para SQL Server 2014 (12.x) y versiones anteriores, consulte Versiones anteriores de la documentación.

Argumentos

'table'
El nombre de la tabla para la que se quiere determinar la información de longitud de columna. table es una expresión de tipo nvarchar.

'column'
El nombre de la columna cuya longitud se quiere determinar. column es una expresión de tipo nvarchar.

Tipo de valor devuelto

smallint

Excepciones

Devuelve NULL si se produce un error o si el autor de la llamada no tiene el permiso correcto para ver el objeto.

En SQL Server, un usuario solo puede ver los metadatos de los elementos protegibles que posea o para los que se le haya concedido permiso. Esto significa que las funciones integradas de emisión de metadatos como COL_LENGTH es posible que devuelvan NULL, si el usuario no tiene el permiso correcto para el objeto. Vea Configuración de visibilidad de los metadatos para obtener más información.

Observaciones

Para las columnas de tipo varchar declaradas con el especificador max (varchar(max)), COL_LENGTH devuelve el valor -1.

Ejemplos

En este ejemplo se muestran los valores devueltos para una columna de tipo varchar(40) y una columna de tipo 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;  

El conjunto de resultados es el siguiente:

VarChar     NVarChar  
40          80  

Consulte también

Expresiones (Transact-SQL)
Funciones de metadatos (Transact-SQL)
COL_NAME (Transact-SQL)
COLUMNPROPERTY (Transact-SQL)