Was ist ein Fremdschlüssel in einer relationalen Datenbank?

Ein einfaches Beispiel

Ein einfaches Beispiel für einen Fremdschlüssel in einer Datenbank ist eine Primärtabelle "Student" mit Student_ID als Primärschlüssel. In der Sekundärtabelle "Course_Enrollment" (Course_Enrollment) mit Course_ID als Primärschlüssel wird für jeden Kurs, für den sich ein Student angemeldet hat, der Fremdschlüssel Student_ID der Tabelle "Student" angezeigt.

Referentielle Integritätsregel

Die referenzielle Integritätsregel besagt, dass sich ein Fremdschlüsselwert in einer Sekundärtabelle, der nicht null ist, auf einen Primärschlüsselwert seiner Primärtabelle in der Datenbank beziehen muss. Im Beispiel von Schritt 1 wäre es in der Datenbank nicht sinnvoll, einen Studenten in einen Kurs einzuschreiben, wenn in der Tabelle "Student" keine Informationen über den Studenten vorhanden sind. Diese Regel erzwingt die Konsistenz in einer Datenbank.

Kaskadierende Eliminierungen

Jeder sekundäre Datensatz in einer Fremdschlüsselbeziehung muss einen entsprechenden primären Datensatz gemäß der referenziellen Integritätsregel haben. Eine Kaskadenlöschung muss erfolgen, wenn ein Datensatz in einer Primärtabelle gelöscht wird, wodurch auch alle entsprechenden Datensätze aus der Datenbank entfernt werden. Im Beispiel von Schritt 1 werden durch das Entfernen eines Schülers aus der Schülertabelle aus der Datenbank auch alle Vorkommen der Einschreibungsdatensätze dieses Schülers in der Course_Enrollment-Tabelle entfernt.

Interessante Artikel