Compartilhar via


REFERENTIAL_CONSTRAINTS (Transact-SQL)

Retorna uma fila para cada restrição FOREIGN KEY no banco de dados atual. Esta 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 do **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 que contém a restrição.

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

CONSTRAINT_NAME

sysname

Nome da restrição.

UNIQUE_CONSTRAINT_CATALOG

nvarchar(128)

Qualificador de restrição UNIQUE.

UNIQUE_CONSTRAINT_SCHEMA

nvarchar(128)

Nome do esquema que contém a restrição UNIQUE.

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

UNIQUE_CONSTRAINT_NAME

sysname

Restrição UNIQUE.

MATCH_OPTION

varchar(7)

Condições de correspondência de restrição referenciais. Sempre retorna SIMPLE. Isso significa que nenhuma correspondência está definida. A condição é considerada uma correspondência quando uma das seguintes condições for verdadeira:

  • Pelo menos um valor na coluna de chave estrangeira é NULL.

  • Todos os valores na coluna de chave estrangeira não são NULL e há uma linha na tabela de chave primária que tem a mesma chave.

UPDATE_RULE

varchar(11)

Ação tomada quando uma instrução Transact-SQL viola a integridade referencial definida por esta restrição.

Retorna uma destas opções:

  • NO ACTION

  • CASCADE

  • SET NULL

  • SET DEFAULT

Se NO ACTION for especificado em ON UPDATE para esta restrição, a atualização da chave primária referenciada na restrição não será propagada para a chave estrangeira. Se tal atualização de uma chave primária causar uma violação de integridade referencial porque pelo menos uma chave estrangeira contém o mesmo valor, SQL Server não farão nenhuma mudança nas tabelas pai e de referência. SQL Server também apontará um erro.

Se CASCADE for especificado em ON UPDATE para esta restrição, qualquer mudança para o valor de chave primária será propagado automaticamente para o valor da chave estrangeira.

DELETE_RULE

varchar(11)

A ação tomada quando uma instrução Transact-SQL viola a integridade referencial definida por esta restrição.

Retorna uma destas opções:

  • NO ACTION

  • CASCADE

  • SET NULL

  • SET DEFAULT

Se NO ACTION for especificado em ON DELETE para essa restrição, a exclusão da chave primária referenciada na restrição não será propagada para a chave estrangeira. Se tal exclusão de uma chave primária causar uma violação de integridade referencial porque pelo menos uma chave estrangeira contém o mesmo valor, SQL Server não farão nenhuma mudança nas tabelas pai e de referência. SQL Server também apontará um erro.

Se CASCADE for especificado em ON DELETE para esta restrição, qualquer mudança para o valor de chave primária será propagado automaticamente para o valor da chave estrangeira.