Referenzielle Integrität (ri)

Definition - Was bedeutet referentielle Integrität (RI)?

Um die referenzielle Integrität aufrechtzuerhalten, müssen die relationalen Daten in Datenbanktabellen universell konfigurierbar sein, damit Änderungen in einem Teil des Systems nicht zu unerwarteten Problemen an anderer Stelle führen.

Insbesondere müssen Schlüssel, die auf Elemente anderer Tabellen verweisen, mit diesen anderen Feldern verbunden werden, damit bei einer Änderung alles zusammen und nicht separat aktualisiert wird.

Dies verhindert Fehler, bei denen stückweise Aktualisierungen zu Unstimmigkeiten führen.

Technische.me erklärt Referential Integrity (RI)

Ein üblicher Weg, um die referenzielle Integrität durchzusetzen, besteht darin, "Trigger" zu entwickeln, die "Kaskaden" in einer Datenbankstruktur implementieren.

Im Allgemeinen können Administratoren mit diesen Tools die funktionierende referenzielle Integrität aufbauen.

Bei der Arbeit mit Primär- und Fremdschlüsseln können Datenbankprofis Modelle zur Durchsetzung der referenziellen Integrität in Tabellensystemen erstellen.

Wenn die referenzielle Integrität vorhanden ist, werden die Datenbankinhalte zusammengefügt, um bei Bedarf gemeinsam aktualisiert zu werden. Zum Beispiel:

Stellen Sie sich eine Bankdatenbank vor, die zwei Tabellen enthält:

  • Tabelle CUSTOMER_MASTER: Diese enthält grundlegende Kunden- / Kontoinhaberdaten wie Name, Sozialversicherungsnummer, Adresse und Geburtsdatum.

  • ACCOUNTS_MASTER Tabelle: Hier werden grundlegende Bankkontodaten wie Kontotyp, Kontoerstellungsdatum, Kontoinhaber und Auszahlungslimits gespeichert.

Um jeden Kunden / Kontoinhaber in der Tabelle CUSTOMER_MASTER eindeutig zu identifizieren, wird eine Primärschlüsselspalte mit dem Namen CUSTOMER_ID erstellt.

Um eine Kunden- und Bankkontobeziehung in der Tabelle ACCOUNTS_MASTER zu identifizieren, muss auf einen vorhandenen Kunden in der Tabelle CUSTOMER_MASTER verwiesen werden.

Daher ist die Spalte CUSTOMER_ID, die ebenfalls in der Tabelle ACCOUNTS_MASTER erstellt wurde, ein Fremdschlüssel. Diese Spalte ist etwas Besonderes, da ihre Werte nicht neu erstellt werden.

Diese Werte müssen vielmehr auf vorhandene und identische Werte in der Primärschlüsselspalte einer anderen Tabelle verweisen, bei der es sich um die Spalte CUSTOMER_ID der Tabelle CUSTOMER_MASTER handelt.

Die referenzielle Integrität ist ein Standard. Dies bedeutet, dass ein CUSTOMER_ID-Wert in der Tabelle CUSTOMER_MASTER nicht bearbeitet werden darf, ohne den entsprechenden Wert in der Tabelle ACCOUNTS_MASTER zu bearbeiten.

Beispiel: Wenn die Kunden-ID von Andrew Smith in der Tabelle CUSTOMER_MASTER geändert wird, muss diese Änderung auch auf die Tabelle ACCOUNTS_MASTER angewendet werden, damit die Kontoinformationen von Andrew Smith mit seiner Kunden-ID verknüpft werden können.

Warum ist referenzielle Integrität wichtig?

Damit können die Tabellen bei Bedarf geändert werden. Angenommen, Sie haben eine Tabelle mit Managern in einer Tabelle und eine Tabelle mit Teammitgliedern in einer anderen Tabelle mit einem Verweis auf den Manager des Teammitglieds aus der ersten Tabelle.

Wenn einer der Manager das Unternehmen verlässt und die Datenbank dies berücksichtigen muss, stellt das referenzielle Integritätssystem sicher, dass in der zweiten Tabelle, der separaten Teammitgliedertabelle, auch das Feld für den zugewiesenen Manager geändert wird.

Andernfalls wird der veraltete Name beim Durchsuchen der zweiten Tabelle angezeigt.

All dieser Prozess kann auch als "Konsistenz" bezeichnet werden.

Auch die Bemühungen zur Datenbanknormalisierung tragen häufig zu diesem Prozess bei.

Die Datenbanknormalisierung wird allgemein als "Reduzieren einer komplexen Datenstruktur in eine einfache" beschrieben. Durch diese Techniken, zu denen die Verwendung der drei den Administratoren bekannten "Formulare" gehört, kann die referenzielle Integrität auf natürliche Weise in erheblichem Maße erzwungen werden.