Partage via


COL_LENGTH (Transact-SQL)

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance

Cette fonction retourne la longueur définie d’une colonne en octets.

Conventions de la syntaxe Transact-SQL

Syntaxe

COL_LENGTH ( 'table' , 'column' )   

Arguments

' table '
Nom de la table dont les informations de longueur de colonne doivent être déterminées. table est une expression de type nvarchar.

' column '
Nom de la colonne dont nous voulons déterminer la longueur. column est une expression de type nvarchar.

Type de retour

smallint

Exceptions

Retourne NULL en cas d’erreur ou si un appelant ne dispose pas de l’autorisation appropriée pour voir l’objet.

Dans SQL Server, un utilisateur peut seulement voir les métadonnées des éléments sécurisables qui lui appartiennent ou pour lesquels il dispose d’un droit d’accès. Cela signifie que les fonctions intégrées générant des métadonnées, comme COL_LENGTH, peuvent retourner NULL si l’utilisateur ne dispose pas de l’autorisation appropriée sur l’objet. Pour plus d’informations, consultez Configuration de la visibilité des métadonnées.

Notes

Pour les colonnes varchar déclarées avec le spécificateur max (varchar(max)), COL_LENGTH retourne la valeur -1.

Exemples

L’exemple suivant montre les valeurs retournées pour une colonne de type varchar(40) et pour une colonne de type 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;  

Voici le jeu de résultats.

VarChar     NVarChar  
40          80  

Voir aussi

Expressions (Transact-SQL)
Fonctions de métadonnées (Transact-SQL)
COL_NAME (Transact-SQL)
COLUMNPROPERTY (Transact-SQL)