CHECK_CONSTRAINTS (Transact-SQL)

Devuelve una fila por cada restricción CHECK de la base de datos actual. 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

CONSTRAINT_CATALOG

nvarchar(128)

Calificador de la restricción.

CONSTRAINT_SCHEMA

nvarchar(128)

Nombre del esquema al que pertenece 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 usar la función OBJECT_SCHEMA_NAME.

CONSTRAINT_NAME

sysname

Nombre de la restricción.

CHECK_CLAUSE

nvarchar(4000)

Texto real de la instrucción de definición Transact-SQL.

SQL Server 2008 se diferencia de SQL Server 2000 en la forma en que descodifica y almacena expresiones SQL en los metadatos del catálogo. La semántica de la expresión descodificada es equivalente al texto original; no obstante, no existen garantías sintácticas. Por ejemplo, los espacios en blanco se quitan de la expresión descodificada. Para obtener más información, vea Cambios de comportamiento en las características del Motor de base de datos en SQL Server 2008.

Ejemplos

En el ejemplo siguiente se devuelven las columnas CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME y CHECK_CLAUSE de cada una de las restricciones CHECK de la base de datos que contienen 'StartDate' en su definición.

USE AdventureWorks;
GO
SELECT CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME, CHECK_CLAUSE
FROM INFORMATION_SCHEMA.CHECK_CONSTRAINTS
WHERE CHECK_CLAUSE LIKE N'%StartDate%';

En el siguiente ejemplo se devuelven las columnas de las vistas CHECK_CONSTRAINTS y CONSTRAINT_COLUMN_USAGE para mostrar información sobre la restricción y la columna en que está definida la restricción.

USE AdventureWorks;
GO

SELECT ccu.TABLE_SCHEMA, ccu.TABLE_NAME, ccu.COLUMN_NAME, cc.CONSTRAINT_SCHEMA, cc.CONSTRAINT_NAME, cc.CHECK_CLAUSE
FROM INFORMATION_SCHEMA.CHECK_CONSTRAINTS AS cc
INNER JOIN INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE AS ccu
    ON cc.CONSTRAINT_NAME = ccu.CONSTRAINT_NAME;