Skip to main content

Como a integridade referencial garante a consistência do banco de dados

Gestão, Preservação e Acesso de Documentos Digitais Autênticos com Daniel Flores (Julho 2024)

Gestão, Preservação e Acesso de Documentos Digitais Autênticos com Daniel Flores (Julho 2024)
Anonim

Os bancos de dados usam tabelas para organizar as informações que eles contêm. Eles são semelhantes a planilhas, como o Excel, mas muito mais capazes para usuários avançados. Os bancos de dados funcionam com o uso de chaves primárias e chaves estrangeiras, que mantêm o relacionamento entre as tabelas.

A integridade referencial é um recurso de banco de dados em sistemas de gerenciamento de banco de dados relacional. Ele garante que os relacionamentos entre as tabelas em um banco de dados permaneçam precisos ao aplicar restrições para impedir que usuários ou aplicativos digitem dados imprecisos ou apontem para dados que não existem.

Chave primária

A chave primária de uma tabela de banco de dados é um identificador exclusivo atribuído a cada registro. Cada tabela possui uma ou mais colunas designadas como chave primária. Um número da Previdência Social pode ser uma chave primária para uma listagem de banco de dados de funcionários, pois cada número da Previdência Social é único.

No entanto, devido a preocupações com a privacidade, um número de ID da empresa atribuído é a melhor opção para funcionar como uma chave primária para os funcionários. Algum software de banco de dados, como o Microsoft Access, atribui a chave primária automaticamente, mas a chave aleatória não tem significado real. É melhor usar uma chave com significado para o registro.

A maneira mais simples de impor a integridade referencial é não permitir alterações em uma chave primária.

Chave estrangeira

Uma chave estrangeira é um identificador em uma tabela que corresponde à chave primária de uma tabela diferente. A chave estrangeira cria o relacionamento com uma tabela diferente. Integridade referencial refere-se ao relacionamento entre essas tabelas.

Quando uma tabela tem uma chave estrangeira para outra tabela, o conceito de integridade referencial indica que você não pode adicionar um registro à tabela que contém a chave externa, a menos que haja um registro correspondente na tabela vinculada. Também inclui as técnicas conhecidas como atualização em cascata e exclusão em cascata, que garantem que as alterações feitas na tabela vinculada sejam refletidas na tabela principal.

Exemplo de regras de integridade referencial

Considere, por exemplo, a situação em que você tem duas tabelas: Funcionários e Gerentes. A tabela Empregados possui um atributo de chave estrangeira chamado ManagedBy, que aponta para o registro do gerente de cada funcionário na tabela Administradores. A integridade referencial impõe as três regras a seguir:

  • Você não pode adicionar um registro à tabela Empregados, a menos que o atributo ManagedBy aponte para um registro válido na tabela Administradores. Integridade referencial impede a inserção de detalhes incorretos em uma tabela. Qualquer operação que não satisfaça a regra de integridade referencial falhará.
  • Se a chave primária de um registro na tabela Gerenciadores for alterada, todos os registros correspondentes na tabela Funcionários serão modificados usando uma atualização em cascata.
  • Se um registro na tabela Gerenciadores for excluído, todos os registros correspondentes na tabela Funcionários serão excluídos usando uma exclusão em cascata.

Vantagens das restrições de integridade referencial

A utilização de um sistema de gerenciamento de banco de dados relacional com integridade referencial oferece várias vantagens:

  • Impede a entrada de dados duplicados
  • Impede que uma tabela aponte para um campo inexistente em outra tabela
  • Garante consistência entre tabelas "parceiras"
  • Impede a exclusão de um registro que contém um valor referido por uma chave estrangeira em outra tabela
  • Impede a adição de um registro a uma tabela que contenha uma chave estrangeira, a menos que haja uma chave primária na tabela vinculada