O que é uma chave estrangeira em um banco de dados relacional?

Uma chave estrangeira em um banco de dados relacional é uma chave usada em uma tabela secundária e que corresponde à chave primária em uma tabela primária relacionada. Chaves estrangeiras podem ter valores duplicados (multiplicidade) na tabela secundária, enquanto para chaves primárias isso não é possível. O uso apropriado de chaves estrangeiras torna possível exigir integridade referencial.

Um exemplo simples

Um exemplo simples de uma chave estrangeira em um banco de dados é uma tabela primária “Student” com Student_ID como sua chave primária. Na tabela secundária relacionada com “Inscrição no Curso” (Inscrição no Curso) com Identificação do Curso como chave primária, para cada curso em que um aluno se inscreveu aparece a chave estrangeira ID_Estudante da tabela “Aluno”.

Regra de integridade referencial

A regra de integridade referencial afirma que qualquer valor de chave estrangeira não nulo em uma tabela secundária deve se referir a um valor de chave primária de sua tabela primária no banco de dados. No exemplo da Etapa 1, não faria sentido no banco de dados ter um aluno matriculado em um curso quando não houver informações sobre o aluno na tabela “Aluno”. Esta regra impõe consistência em um banco de dados.

Eliminações em cascata

Cada registro secundário em um relacionamento de chave estrangeira deve ter um registro primário correspondente, de acordo com a regra de integridade referencial. Uma exclusão em cascata deve ocorrer sempre que um registro em uma tabela principal é excluído, o que também remove todos os registros correspondentes do banco de dados. No exemplo da Etapa 1, remover um aluno da tabela Aluno do banco de dados também removerá todas as ocorrências dos registros de inscrição desse aluno na tabela Course_Enrollment.

Referências

 

Você pode estar interessado:

Deixe um comentário