CONSTRAINT_TABLE_USAGE (Transact-SQL)
Returns one row for each table in the current database that has a constraint defined on the table. This information schema view returns information about the objects to which the current user has permissions.
To retrieve information from these views, specify the fully qualified name of INFORMATION_SCHEMA.view_name.
Column name |
Data type |
Description |
---|---|---|
TABLE_CATALOG |
nvarchar(128) |
Table qualifier. |
TABLE_SCHEMA |
nvarchar(128) |
Name of schema that contains the table.
Important
Do not use INFORMATION_SCHEMA views to determine the schema of an object. The only reliable way to find the schema of an object is to query the sys.objects catalog view or the OBJECT_SCHEMA_NAME function.
|
TABLE_NAME |
sysname |
Table name. |
CONSTRAINT_CATALOG |
nvarchar(128) |
Constraint qualifier. |
CONSTRAINT_SCHEMA |
nvarchar(128) |
Name of schema that contains the constraint.
Important
Do not use INFORMATION_SCHEMA views to determine the schema of an object. The only reliable way to find the schema of an object is to query the sys.objects catalog view or the OBJECT_SCHEMA_NAME function.
|
CONSTRAINT_NAME |
sysname |
Constraint name. |
Examples
The following example returns constraint information for each table or view in the Production schema.
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';
The following example returns each table or view in the database that has a CHECK constraint defined on it. The query contains a join to the CHECK_CONSTRAINT view to return the definition of the CHECK constraint.
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;