Datenkonsistenz: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| Zeile 1: | Zeile 1: | ||
'''Datenkonsistenz''' bezeichnet die Integrität bzw. Zuverlässigkeit von [[Daten]], insbesondere im Zusammenhang mit [[ | '''Datenkonsistenz''' bezeichnet die Integrität bzw. Zuverlässigkeit von [[Daten]], insbesondere im Zusammenhang mit [[Datenbank]]en. Ein Datenbankzustand wird nur dann als konsistent betrachtet, wenn alle definierten Integritätsbedingungen (engl. ''Constraints'') erfüllt sind. Werden eine oder mehrere dieser Bedingungen verletzt, gilt der Zustand als inkonsistent. Die Regeln, die festlegen, was einen Widerspruch darstellt, werden innerhalb des [[Schema|Datenbankschemas]] definiert. | ||
== Integritätsbedingungen == | == Integritätsbedingungen == | ||
Aktuelle Version vom 26. November 2025, 10:52 Uhr
Datenkonsistenz bezeichnet die Integrität bzw. Zuverlässigkeit von Daten, insbesondere im Zusammenhang mit Datenbanken. Ein Datenbankzustand wird nur dann als konsistent betrachtet, wenn alle definierten Integritätsbedingungen (engl. Constraints) erfüllt sind. Werden eine oder mehrere dieser Bedingungen verletzt, gilt der Zustand als inkonsistent. Die Regeln, die festlegen, was einen Widerspruch darstellt, werden innerhalb des Datenbankschemas definiert.
Integritätsbedingungen
Man unterscheidet verschiedene Arten von Integritätsbedingungen:
Datentypintegrität
Die Datentypintegrität (auch Domänenintegrität) stellt sicher, dass in einer Spalte einer Tabelle nur Daten eines vorher definierten Datentyps gespeichert werden können. So kann beispielsweise in eine Spalte vom Typ INTEGER kein Text eingetragen werden.
Bereichsintegrität
Die Bereichsintegrität ist eine Erweiterung der Datentypintegrität und legt fest, dass der Wert eines Attributes innerhalb eines bestimmten Wertebereichs liegen muss. Ein Beispiel wäre die Bedingung, dass ein Wert für "Alter" größer als 0 sein muss.
Entitätsintegrität
Die Entitätsintegrität verlangt, dass jeder Datensatz (Tupel) in einer Tabelle eindeutig identifizierbar ist und es keine vollständigen Duplikate geben darf. Diese Eindeutigkeit wird technisch durch einen Primärschlüssel realisiert, der jeden Datensatz einmalig kennzeichnet.
Referenzielle Integrität
Die referenzielle Integrität betrifft die Beziehungen zwischen Tabellen. Sie stellt sicher, dass ein Fremdschlüssel in einer Tabelle entweder den Wert NULL enthält oder auf einen existierenden Primärschlüssel in der referenzierten Tabelle verweist. So wird verhindert, dass auf nicht existierende Datensätze verwiesen wird.
Logische Konsistenz
Unter logischer Konsistenz versteht man benutzerdefinierte, fachliche Integritätsbedingungen, die über die technischen Constraints hinausgehen. Ein Beispiel aus einer Stammbaumdatenbank wäre die Regel, dass Kinder nach ihren Eltern geboren worden sein müssen. Da Datenbankmanagementsysteme (DBMS) solche komplexen logischen Bedingungen oft nicht automatisch überprüfen können, müssen sie durch die Anwendungslogik oder eine zusätzliche Software-Schicht sichergestellt werden.