Integridade referencial: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
m Revertidas edições por 177.132.126.252 por adição de informação suspeita sem fontes (usando Huggle)
Desfeita a edição 35535280 de Zoldyick
Linha 4:
 
== Exemplo ==
Em um banco de dados há uma tabela onde há uma relação com os nomes dos estados brasileiros, exemplo:
Com uma tabela de países e a tabela de cidades, estão na tabela de países os países A e B cadastrados, e na tabela de cidades as cidades de AA (no país A) e BB (no país B). Se tentarmos excluir o país A, essa operação não deve ser permitida, pois há cidades relacionadas o país A e que têm essa referência como [[chave estrangeira]].
{| class="wikitable"
|-
! UF !! NOME_ESTADO
|-
| RS || Rio Grande do Sul
|-
| SC || Santa Catarina
|-
| ... || ...
|}
 
Em outra tabela há uma relação com o nome dos munícipios brasileiros e o estado a que pertecem. exemplo:
A integridade referencial garante a não corrupção dos dados, de modo a não haver como existir um registro "filho" sem um registro "pai".
{| class="wikitable"
|-
! CIDADE !! UF
|-
| Porto Alegre || RS
|-
| Florianópolis || SC
|-
| ... || ...
|}
 
Se nesta segunda tabela for declarada uma relação com a primeira através da coluna "UF", e tentarmos excluir o registro correspondente ao estado "Rio Grande do Sul"; essa operação não deve ser permitida, pois há registros na tabela cidades (no caso "Porto Alegre") que dependem da existência do registro que se pretente excluir, pois estão relacionadas o estado "RS". Essa referência à tabela ESTADO, existente na tabela CIDADE através da coluna UF tem o nome de [[chave estrangeira]].
No MySQL, por exemplo, temos 4 opções para a integridade referencial: Cascade, Set Null, Restrict e No Action.
 
A integridade referencial visa garantir a não corrupção dos dados, de modo a não haver como existir um registro "filho" sem um registro "pai". A tentativa de exclusão (ou alteração da chave primária - no caso, a coluna "UF") de um registo "pai" que possui registros "filhos" a ele vinculados é chamada de violação de chave estrangeira.
 
[[Categoria:SGBDs]]