Nwlapcug.com


Che cosa è una chiave esterna di Database relazionale?

Che cosa è una chiave esterna di Database relazionale?


Una chiave esterna in un database relazionale è una chiave utilizzata in una tabella figlio che corrisponde alla chiave primaria in una tabella padre correlate. Chiavi esterne possono avere valori duplicati (molteplicità) nella tabella figlio, mentre chiavi primarie non possono. Utilizzando chiavi esterne correttamente, è possibile applicare l'integrità referenziale.

Un semplice esempio

Un semplice esempio di una chiave esterna del database è una tabella "Studente" database padre Student_ID come chiave primaria. Nella tabella figlio correlata "Course_Enrollment" con Course_ID come chiave primaria, per ogni corso che uno studente è iscritto, la chiave esterna, Student_ID dalla tabella studente, appare.

Regola di integrità referenziale

Gli Stati di regola di integrità referenziale che qualsiasi valore non null della chiave esterna in una tabella figlio deve fare riferimento a un valore di chiave primaria della sua tabella padre nel database. Nell'esempio nel passaggio 1, non avrebbe senso nel database di avere uno studente iscritto a un corso dove non c'è nessuna informazione su quello studente nella tabella studente. Questa regola impone la coerenza in un database.

Eliminazioni a catena

Ogni record di bambino in una relazione di chiave esterna deve avere un corrispondente record padre secondo la regola di integrità referenziale. Ogni volta che un record da una tabella padre viene rimosso, che rimuove anche tutti i record corrispondenti dal database di bambino, deve verificarsi un'eliminazione a catena. Nell'esempio del passaggio 1, rimozione di uno studente dal database studente anche rimuoverà tutte le occorrenze di iscrizione dello studente nella tabella Course_Enrollment.