Compartilhar via


CHECK_CONSTRAINTS (Transact-SQL)

Retorna uma linha para cada restrição CHECK no banco de dados atual. Essa exibição de esquema de informações retorna informações sobre os objetos para os quais o usuário atual tem permissões.

Para recuperar informações dessas exibições, especifique o nome totalmente qualificado de INFORMATION_SCHEMA.view_name.

Nome da coluna

Tipo de dados

Descrição

CONSTRAINT_CATALOG

nvarchar(128)

Qualificador de restrição.

CONSTRAINT_SCHEMA

nvarchar(128)

Nome do esquema ao qual a restrição pertence.

Observação importanteImportante
Não use exibições INFORMATION_SCHEMA para determinar o esquema de um objeto. O único modo seguro de localizar o esquema de um objeto é consultar a exibição do catálogo sys.objects ou usar a função OBJECT_SCHEMA_NAME.

CONSTRAINT_NAME

sysname

Nome da restrição.

CHECK_CLAUSE

nvarchar(4000)

Texto real da instrução de definição Transact-SQL.

O SQL Server 2008 difere do SQL Server 2000 na maneira como decodifica e armazena expressões SQL nos metadados do catálogo. A semântica da expressão decodificada equivale ao texto original; porém, não há nenhuma garantia sintática. Por exemplo, os espaços em branco são removidos da expressão decodificada. Para obter mais informações, consulte Alterações no comportamento de recursos do Mecanismo de Banco de Dados no SQL Server 2008.

Exemplos

O exemplo a seguir retorna as colunas CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME e CHECK_CLAUSE para cada restrição CHECK no banco de dados que contém 'StartDate' na definição da restrição.

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

O exemplo a seguir retorna colunas das exibições CHECK_CONSTRAINTS e CONSTRAINT_COLUMN_USAGE para exibir informações sobre a restrição e a coluna nas quais a restrição é definida.

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;