CONSTRAINT_TABLE_USAGE (Transact-SQL)

Devuelve una fila por cada tabla de la base de datos actual que tiene una restricción definida en ella. Esta vista de esquema de información devuelve información acerca de los objetos para los que el usuario actual tiene permisos.

Para recuperar información de estas vistas, especifique el nombre completo de INFORMATION_SCHEMA.view_name.

Nombre de columna

Tipo de datos

Descripción

TABLE_CATALOG

nvarchar(128)

Calificador de tabla.

TABLE_SCHEMA

nvarchar(128)

Nombre de esquema que contiene la tabla.

Nota importanteImportante
No utilice las vistas INFORMATION_SCHEMA para determinar el esquema de un objeto. La única manera confiable de localizar el esquema de un objeto consiste en consultar la vista de catálogo sys.objects o la función OBJECT_SCHEMA_NAME.

TABLE_NAME

sysname

Nombre de la tabla.

CONSTRAINT_CATALOG

nvarchar(128)

Calificador de la restricción.

CONSTRAINT_SCHEMA

nvarchar(128)

Nombre del esquema que contiene la restricción.

Nota importanteImportante
No utilice las vistas INFORMATION_SCHEMA para determinar el esquema de un objeto. La única manera confiable de localizar el esquema de un objeto consiste en consultar la vista de catálogo sys.objects o la función OBJECT_SCHEMA_NAME.

CONSTRAINT_NAME

sysname

Nombre de la restricción.

Ejemplos

En el ejemplo siguiente se devuelve información sobre la restricción de cada tabla o vista del esquema 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';

En el ejemplo siguiente se devuelve una tabla o vista de la base de datos que tiene una restricción CHECK definida. La consulta contiene una combinación con la vista CHECK_CONSTRAINT para devolver la definición de la restricción 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;