1.5 Datenintegrität
Datenintegrität1 liegt vor, wenn die gespeicherten Daten korrekt, vollständig und konsistent sind.
- Korrekt bedeutet, dass gespeicherte Daten den Sachverhalt der realen Welt, den sie abbilden, inhaltlich richtig widerspiegeln.
- Ein Datenbestand ist vollständig, wenn er alle für den vorgesehenen Zweck notwendigen und relevanten Daten enthält.
-
Daten sind konsistent2, wenn sie widerspruchsfrei sind. Ist ein Datenbestand nicht frei von Widersprüchen, ist er inkonsistent.
Integritätsbedingungen bei relationalen Datenbanken
Im Bereich der relationalen Datenbanken tragen die folgenden Integritätsbedingungen zur Gewährleistung der Integrität bei.
-
Entitätsintegrität
Jeder Datensatz besitzt einen eindeutigen Primärschlüssel. -
Referenzielle Integrität
Für jeden Fremdschlüsselwert existiert in der Relation (Datenbanktabelle), auf die verwiesen wird, ein Tupel (Datensatz), das diesen Wert als Primärschlüssel besitzt.
Beispiel für einen Verstoß gegen die referenzielle Integrität:
In der Tabelle Auftrag ist in einem Datensatz in der Spalte Kunde_ID (=Fremdschlüssel, der auf die Primärschlüsselspalte ID der Tabelle Kunde verweist) die Zahl 5 gespeichert. Wenn in der Tabelle Kunde kein Datensatz mit einem Primärschlüsselwert von 5 existiert, ist dadurch die referenzielle Integrität der Datenbank beschädigt.
Der Fremdschlüsselwert 5 stellt außerdem einen Widerspruch dar, da er angibt, dass es einen Kunden mit der ID 5 gibt. Dies ist in diesem Beispiel jedoch nicht der Fall. Dieser Widerspruch bedeutet, dass die Datenbank inkonsistent, d. h. nicht frei von Widersprüchen, ist. -
Wertebereichsintegrität
Der Wert eines Feldes muss innerhalb des für die jeweilige Spalte vorgegebenen Wertebereichs liegen.
Diese können um weitere benutzerdefinierte Integritätsbedingungen ergänzt werden.