A visão table_constraints contém todas as restrições pertencentes às tabelas que pertencem ao usuário corrente. [1] [2] [3]
Tabela 30-32. Colunas de table_constraints
Nome | Tipo de dado | Descrição |
---|---|---|
constraint_catalog | sql_identifier | Nome do banco de dados que contém a restrição (sempre o banco de dados corrente) |
constraint_schema | sql_identifier | Nome do esquema que contém a restrição |
constraint_name | sql_identifier | Nome da restrição |
table_catalog | sql_identifier | Nome do banco de dados que contém a tabela (sempre o banco de dados corrente) |
table_schema | sql_identifier | Nome do esquema que contém a tabela |
table_name | sql_identifier | Nome da tabela |
constraint_type | character_data | Tipo da restrição: CHECK, FOREIGN KEY, PRIMARY KEY ou UNIQUE |
is_deferrable | character_data | YES se a restrição for postergável, NO caso contrário |
initially_deferred | character_data | YES se a restrição for postergável e inicialmente postergada, NO caso contrário |
Exemplo: Consultar a visão table_constraints. [4]
=> \x Ativada a exibição expandida. => SELECT * FROM information_schema.table_constraints; -[ LINHA 1 ]-------+----------------------------- constraint_catalog | teste constraint_schema | public constraint_name | tbl_cardinal_pkey table_catalog | teste table_schema | public table_name | tbl_cardinal constraint_type | PRIMARY KEY is_deferrable | NO initially_deferred | NO -[ LINHA 2 ]-------+----------------------------- constraint_catalog | teste constraint_schema | public constraint_name | tbl_info_pkey table_catalog | teste table_schema | public table_name | tbl_info constraint_type | PRIMARY KEY is_deferrable | NO initially_deferred | NO -[ LINHA 3 ]-------+----------------------------- constraint_catalog | teste constraint_schema | public constraint_name | tbl_info_valor_cardinal_fkey table_catalog | teste table_schema | public table_name | tbl_info constraint_type | FOREIGN KEY is_deferrable | NO initially_deferred | NO
[1] |
TABLE_CONSTRAINTS — visão — Identifica as restrições de tabela definidas nas tabelas neste catálogo acessíveis a um determinado usuário ou grupo. (ISO-ANSI Working Draft) Information and Definition Schemas (SQL/Schemata), ISO/IEC 9075-11:2003 (E) (N. do T.) |
[2] |
O rowset TABLE_CONSTRAINTS identifica as restrições de tabela definidas no catálogo pertencentes a um determinado usuário. Microsoft OLE DB Programmer's Reference (N. do T.) |
[3] |
A visão TABLE_CONSTRAINTS contém uma linha para cada restrição de tabela no banco de dados corrente. Esta visão do esquema de informações retorna informações sobre os objetos que o usuário corrente possui permissões. A visão INFORMATION_SCHEMA.TABLE_CONSTRAINTS é baseada na tabela do sistema sysobjects. SQL Server Books Online (N. do T.) |
[4] |
Exemplo escrito pelo tradutor, não fazendo parte do manual original. |