CONSTRAINT_TABLE_USAGE (Transact-SQL)

Renvoie une ligne pour chaque table de la base de données active pour laquelle une contrainte est définie dans cette table. Cette vue renvoie des informations sur les objets autorisés pour l'utilisateur actuel.

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

Nom de colonne

Type de données

Description

TABLE_CATALOG

nvarchar(128)

Identificateur de la table

TABLE_SCHEMA

nvarchar(128)

Nom du schéma qui contient la table.

ImportantImportant
N'utilisez pas les vues INFORMATION_SCHEMA pour déterminer le schéma d'un objet. La seule méthode fiable pour rechercher le schéma d'un objet est d'interroger l'affichage catalogue sys.objects ou d'utiliser la fonction OBJECT_SCHEMA_NAME.

TABLE_NAME

sysname

Nom de la table.

CONSTRAINT_CATALOG

nvarchar(128)

Qualificateur de la contrainte.

CONSTRAINT_SCHEMA

nvarchar(128)

Nom du schéma qui contient la contrainte.

ImportantImportant
N'utilisez pas les vues INFORMATION_SCHEMA pour déterminer le schéma d'un objet. La seule méthode fiable pour rechercher le schéma d'un objet est d'interroger l'affichage catalogue sys.objects ou d'utiliser la fonction OBJECT_SCHEMA_NAME.

CONSTRAINT_NAME

sysname

Nom de la contrainte.

Exemples

L'exemple suivant décrit les paramètres d'une contrainte correspondant à chaque table ou vue dans le schéma Production.

USE AdventureWorks;
GO

SELECT *
FROM INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE AS ctu
INNER JOIN sys.objects AS o ON ctu.TABLE_NAME = o.name 
    AND OBJECT_SCHEMA_NAME(o.object_id) = N'Production';

Dans l'exemple suivant, une requête renvoie chaque table ou chaque vue dans la base de données pour laquelle il existe une contrainte CHECK. La requête contient une jointure avec la vue CHECK_CONSTRAINT qui permet d'obtenir la définition de la contrainte CHECK.

USE AdventureWorks;
GO

SELECT ctu.TABLE_SCHEMA, ctu.TABLE_NAME, cc.CONSTRAINT_SCHEMA, cc.CONSTRAINT_NAME, cc.CHECK_CLAUSE
FROM INFORMATION_SCHEMA.CHECK_CONSTRAINTS AS cc
INNER JOIN INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE AS ctu
    ON cc.CONSTRAINT_NAME = ctu.CONSTRAINT_NAME;