COLUMNS (Transact-SQL)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Point de terminaison analytique SQL dans Microsoft FabricEntrepôt dans Microsoft Fabric

Renvoie une ligne pour chaque colonne accessible à l'utilisateur actuel dans la base de données actuelle.

Pour récupérer des informations à partir de ces vues, spécifiez le nom complet de INFORMATION_SCHEMA.view_name.

Nom de la colonne Type de données Description
TABLE_CATALOG nvarchar(128) Qualificateur de la table.
TABLE_SCHEMA nvarchar(128) Nom du schéma qui contient la table.

Important N’utilisez pas les vues INFORMATION_SCHEMA pour déterminer le schéma d’un objet. Les vues INFORMATION_SCHEMA représentent uniquement un sous-ensemble des métadonnées d’un objet. La seule méthode fiable pour rechercher le schéma d’un objet est d’interroger l’affichage catalogue sys.objects.
TABLE_NAME nvarchar(128) Nom de la table.
COLUMN_NAME nvarchar(128) Nom de la colonne.
ORDINAL_POSITION int Numéro d'identification de colonne.
COLUMN_DEFAULT nvarchar(4000) Valeur par défaut de la colonne.
IS_NULLABLE varchar(3) Valeur NULL possible dans la colonne. Si cette colonne accepte des valeurs NULL, elle renvoie YES. Dans le cas contraire, elle renvoie NO.
DATA_TYPE nvarchar(128) Type de données fourni par le système.
CHARACTER_MAXIMUM_LENGTH int Longueur maximale (en caractères) des données de type binaire, caractère, texte et image.

-1 pour les données de type xml et de grande valeur. Renvoie NULL dans les autres cas. Pour plus d’informations, consultez Types de données (Transact-SQL).
CHARACTER_OCTET_LENGTH int Longueur maximale, en octets, des données de type binaire, caractère, texte et image.

-1 pour les données de type xml et de grande valeur. Renvoie NULL dans les autres cas.
NUMERIC_PRECISION tinyint Précision des données numériques approchées ou exactes, des données de type entier ou monétaire. Renvoie NULL dans les autres cas.
NUMERIC_PRECISION_RADIX smallint Base de précision des données numériques approchées ou exactes, des données de type entier ou monétaire. Renvoie NULL dans les autres cas.
NUMERIC_SCALE int Échelle des données numériques approchées ou exactes, des données de type entier ou monétaire. Renvoie NULL dans les autres cas.
DATETIME_PRECISION smallint Code de sous-type pour les types de données datetime et INTERVALLE ISO. Renvoie NULL pour les autres types de données.
CHARACTER_SET_CATALOG nvarchar(128) Retourne la forme de base. Cela indique la base de données dans laquelle se trouve le jeu de caractères, si la colonne est un type de données de caractères ou de texte . Renvoie NULL dans les autres cas.
CHARACTER_SET_SCHEMA nvarchar(128) Retourne toujours la valeur Null.
CHARACTER_SET_NAME nvarchar(128) Retourne le nom unique du jeu de caractères si cette colonne est un type de données de caractères ou de texte . Renvoie NULL dans les autres cas.
COLLATION_CATALOG nvarchar(128) Retourne toujours la valeur Null.
COLLATION_SCHEMA nvarchar(128) Retourne toujours la valeur Null.
COLLATION_NAME nvarchar(128) Retourne le nom unique du classement si la colonne est un type de données de caractères ou de texte . Renvoie NULL dans les autres cas.
DOMAIN_CATALOG nvarchar(128) Si la colonne est un type de données alias, elle correspond au nom de la base de données dans laquelle le type de données défini par l'utilisateur a été créé. Renvoie NULL dans les autres cas.
DOMAIN_SCHEMA nvarchar(128) Si la colonne est un type de données défini par l'utilisateur, elle renvoie le nom du schéma du type de données défini par l'utilisateur. Renvoie NULL dans les autres cas.

Important : n’utilisez pas INFORMATION_SCHEMA vues pour déterminer le schéma d’un type de données. La seule méthode fiable pour rechercher le schéma d'un type est d'utiliser la fonction TYPEPROPERTY.
NOM_DOMAINE nvarchar(128) Si la colonne est un type de données défini par l'utilisateur, elle représente le nom du type de données défini par l'utilisateur. Renvoie NULL dans les autres cas.

Notes

Colonne ORDINAL_POSITION du INFORMATION_SCHEMA. La vue COLUMNS n’est pas compatible avec le modèle de bits des colonnes retournées par la fonction COLUMNS_UPDATED. Pour obtenir un modèle de bits compatible avec COLUMNS_UPDATED, vous devez référencer la propriété ColumnID de la fonction système COLUMNPROPERTY lorsque vous interrogez le INFORMATION_SCHEMA. Affichage COLONNES . Par exemple :

USE AdventureWorks2022;  
GO  
SELECT TABLE_NAME, COLUMN_NAME, COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME), COLUMN_NAME, 'ColumnID') AS COLUMN_ID  
FROM AdventureWorks2022.INFORMATION_SCHEMA.COLUMNS  
WHERE TABLE_NAME = 'Person';  
GO  

Voir aussi