Returns one row for each table constraint in the current database. 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
|
|---|
|
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.
|
|
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_TYPE
|
varchar(11)
|
Type of constraint:
-
CHECK
-
UNIQUE
-
PRIMARY KEY
-
FOREIGN KEY
|
|
IS_DEFERRABLE
|
varchar(2)
|
Specifies whether constraint checking is deferrable. Always returns NO.
|
|
INITIALLY_DEFERRED
|
varchar(2)
|
Specifies whether constraint checking is at first deferred. Always returns NO.
|
The following example returns all constraints in the database and orders the rows by CONSTRAINT_TYPE.
USE AdventureWorks;
GO
SELECT *
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
ORDER BY CONSTRAINT_TYPE;
Reference
System Views (Transact-SQL)
Information Schema Views (Transact-SQL)
sys.objects (Transact-SQL)
sys.key_constraints (Transact-SQL)
sys.check_constraints (Transact-SQL)
sys.tables (Transact-SQL)
OBJECT_SCHEMA_NAME (Transact-SQL)
Other Resources
Querying the SQL Server System Catalog
Help and Information
Getting SQL Server 2008 Assistance