Was ist eine relationale Datenbank Fremdschlüssel? 1

March 11

Was ist eine relationale Datenbank Fremdschlüssel? 1

Ein Fremdschlüssel in einer relationalen Datenbank ist ein Schlüssel in einer untergeordneten Tabelle, die den Primärschlüssel in einer zugehörigen übergeordneten Tabelle entspricht. Fremdschlüssel möglicherweise doppelte Werte (Vielheit) in der untergeordneten Tabelle, während Primärschlüssel nicht möglich. Ordnungsgemäßen Verwendung von Fremdschlüsseln kann referenzielle Integrität zu erzwingen.

Ein einfaches Beispiel

Ein einfaches Beispiel eines Fremdschlüssels Datenbank ist ein "Student" übergeordnete Datenbanktabelle mit Student_ID als ihr Primärschlüssel. Im zugehörigen untergeordneten Tabelle "Course_Enrollment" mit Course_ID als einen Primärschlüssel, für jeden Kurs, in dem ein Student eingeschrieben hat, erscheint der Fremdschlüssel, Student_ID aus der Tabelle Student.

Referenzielle Integrität Regel

Die referentielle Integrität-Regel besagt, dass jede ungleich NULL Fremdschlüsselwert in einer untergeordneten Tabelle auf einen Primärschlüsselwert in der übergeordneten Tabelle in der Datenbank verweisen muss. In dem Beispiel in Schritt 1, es wäre sinnlos in der Datenbank ein Student in einen Kurs eingeschrieben haben wo es keine Informationen über dieses Studenten in der Tabelle Student. Diese Regel erzwingt Konsistenz in einer Datenbank.

Kaskade-Löschungen

Jedes Kind-Datensatzes in eine Fremdschlüsselbeziehung muss einen passenden übergeordneten Datensatz nach der Regel der referenziellen Integrität. Eine Löschweitergabe muss erfolgen, sobald ein Datensatz aus einer übergeordneten Tabelle entfernt wird, die auch alle entsprechenden Datensätze aus der Kind-Datenbank entfernt. Im Schritt 1 Beispiel wird ein Student aus der Schüler-Datenbank auch alle Vorkommen dieses Studenten-Einschreibung in die Course_Enrollment-Tabelle entfernen.