|
|
|
||||||||||||||||||||||
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Parceiros - CSS para Web Design - S.O.S Designers - Slackware-Brasil - Crie seu Web site - Oficina da Net |
Definição de chaves para tabelas e restriçõesVemos chaves primárias e chaves externas (foreing keys) e aprendemos a aplicar restrições aos distintos campos das tabelas. Chave primária: Primary key
É uma coluna ou um conjunto de colunas que identificam univocamente a cada fila. Deve ser única, não nula e obrigatória. Como máximo, podemos definir uma chave primária por tabela. Esta chave pode ser referenciada por uma coluna ou colunas. Quando se cria uma chave primária, automaticamente se cria um índice que facilita o acesso à tabela. Formato de restrição de coluna: CREATE TABLE NOME_TABELA (COL1 TIPO_DADO [CONSTRAINT NOME_RESTRICAO] PRIMARY KEY COL2 TIPO_DADO … )[TABLESPACE ESPACO_DE_TABELA]; Formato de restrição de tabela: CREATE TABLE NOME_TABELA (COL1 TIPO_DADO, COL2 TIPO_DADO, … [CONSTRAINT NOMERESTRICAO] PRIMARY KEY (COLUNA [,COLUNA]), … )[TABLESPACE ESPACO_DE_TABELA]; Chaves alheias: Foreign Key: Está formada por uma ou várias colunas que estão associadas a uma chave primária de outra ou da mesma tabela. Pode-se definir tantas chaves alheias quantas se necessite, e podem estar ou não na mesma tabela que a chave primária. O valor da coluna ou colunas que são chaves alheias deve ser: NULL ou igual a um valor da chave referenciada (regra de integridade referencial). Formato de restrição de coluna: CREATE TABLE NOME_TABELA (COLUNA1 TIPO_DADO [CONSTRAINT NOMERESTRICAO] REFERENCES NOMETABELA [(COLUNA)] [ON DELETE CASCADE] … )[TABLESPACE ESPACO_DE_TABELA]; Formato de restrição de tabela: CREATE TABLE NOME_TABELA (COLUNA1 TIPO_DADO, COLUNA2 TIPO_DADO, … [CONTRAINT NOMERESTRICAO] FOREIGN KEY (COLUNA [,COLUNA]) REFERENCES NOMETABELA [(COLUNA [, COLUNA])] [ON DELETE CASCADE], )[TABLESPACE ESPACO_DE_TABELA]; Notas:
DEFAULT: Proporcionamos a uma coluna um valor padrão quando o valor da coluna não se especifica na cláusula INSERT. Na especificação DEFAULT é possível incluir várias expressões: constantes, funções SQL e variáveis UID e SYSDATE. Verificação de restrições: CHECK: Atua como uma cláusula where. Pode fazer referência a uma ou mais colunas, porém não a valores de outras filas. Em uma cláusula CHECK não se podem incluir sub-consultas nem as pseudo-consultas SYSDATE, UID e USER.
UNIQUE: Evita valores repetidos na mesma coluna. Pode conter uma ou várias colunas. É similar à restrição PRIMARY KEY, salvo que são possíveis várias colunas UNIQUE definidas em uma tabela. Admite valores NULL. Assim como em PRIMARY KEY, quando se define uma restrição UNIQUE se cria um índice automaticamente. Vistas do dicionário de dados para as restrições: Contém informação geral as seguintes: USER_CONSTRAINTS: Definições de restrições de tabelas propriedade do usuário. ALL_CONSTRAINTS: Definições de restrições sobre tabelas as quais pode acessar o usuário. DBA_CONSTRAINTS: Todas as definições de restrições sobre todas as tabelas. Criação de uma tabela com dados recuperados em uma consulta: CREATE TABLE: permite criar uma tabela a partir da consulta de outra tabela já existente. A nova tabela conterá os dados obtidos na consulta. Realiza-se esta ação com a cláusula AS colocada ao final da ordem CREATE TABLE. CREATE TABLE NOMETABELA (COLUNA [,COLUNA] )[TABLESPACE ESPACO_DE_TABELA] AS CONSULTA; Não é necessário especificar tipos nem tamanho das consultas, já que vêm determinadas pelos tipos e os tamanhos das recuperadas na consulta. A consulta pode ter uma sub-consulta, uma combinação de tabelas ou qualquer sentença select válida. As restrições COM NOME não se criam em uma tabela desde a outra, só se criam aquelas restrições que carecem de nome.
Autoria e outras referências sobre este artigo Dentro deste artigo: + 1 manual relacionado + 1 categoria relacionada
Manuais relacionados com este artigo Dentro de Tutorial de SQL Anterior: Chaves primárias com SQL com Oracle Categorias relacionadas Através das categorias do nosso diretório podem ser encontrados outros tipos de recursos relacionados com este artigo: + Entrar em Linguagem SQLComentários dos visitantes Os comentários dos visitantes são para ampliar a informação do artigo. Todos podem participar.
|
| Sobre nós | Copyright | Anuncie | Entrar em contato | <criarweb> |