Was ist Codds Regeln?
Codds Regeln beziehen sich auf eine Reihe von 13 Datenbankmanagementsystemregeln (0-12), die 1969-1970 von EF Codd entwickelt wurden. Er konzipierte diese Regeln als Voraussetzung, um ein Datenbankmanagementsystem (DBMS) als relationales Datenbankmanagementsystem (RDBMS) zu betrachten. Obwohl die Regeln in kommerziellen Anwendungen zunächst nicht weit verbreitet waren, basierten spätere DBMS auf Codds Regeln. Codds Regeln werden auch als Codds Gesetz, Codds 12 Regeln oder Codds 12 Gebote bezeichnet.
Die 12 Regeln von CODD definieren eine ideale relationale Datenbank, die als Richtlinie für die Gestaltung relationaler Datenbanksysteme heute verwendet wird. Obwohl kein kommerzielles Datenbanksystem vollständig allen 12 Regeln entspricht, interpretieren sie den relationalen Ansatz. Hier sind die CODD-12-Regeln: Regel 0: Foundation-Regel: Das System muss sowohl als Datenbank als auch als Managementsystem als relational gelten.
Regel 1: Die Informationsregel: Alle Informationen in der Datenbank müssen auf eine einzige Weise dargestellt werden (dh als Werte in einer Tabelle).
Regel 2: Die garantierte Zugriffsregel: Alle Daten sollten logisch durch eine Kombination aus Tabellenname, Primärschlüsselwert und Spaltenname zugänglich sein.
Regel 3: Systematische Behandlung von Nullwerten: Ein DBMS Nullwert stützen muß fehlende Informationen und unzutreffende Informationen in systematischer Weise unabhängig von Datentypen darzustellen.
Regel 4: Aktiver Online-Katalog basierend auf dem relationalen Modell: Die Datenbank muss den relationalen Online-Katalog unterstützen, auf den autorisierte Benutzer über ihre normale Abfragesprache zugreifen können.
Regel 5: Die umfassende Daten Subsprache Regel: Die Datenbank muss mindestens eine Sprache unterstützen , die lineare Syntax Funktionalität definiert, unterstützt die Datendefinition und Manipulationsoperationen, Datenintegrität und Datenbanktransaktionssteuerung.
Regel 6: Die Aktualisierungsregel für Ansichten: Die Darstellung von Daten kann mit verschiedenen logischen Kombinationen, den Views, erfolgen. Alle Ansichten, die theoretisch aktualisierbar sind, müssen auch vom System aktualisiert werden können.
Regel 7: Einfügung, Aktualisierung und Löschung auf hoher Ebene: Das System muss die zu einem Zeitpunkt gesetzten Operatoren einfügen, aktualisieren und löschen unterstützen.
Regel 8: Physikalische Datenunabhängigkeit: Änderungen auf der physischen Ebene dürfen keine Auswirkungen auf das Anwendungsprogramm haben und eine Änderung erfordern.
Regel 9: Logische Datenunabhängigkeit: Änderungen in der logischen Ebene dürfen keine Auswirkungen haben und eine Änderung im Anwendungsprogramm erfordern.
Regel 10: Integritätsunabhängigkeit: Integritätsbedingungen müssen definiert und von den Anwendungsprogrammen getrennt werden. Changing Constraints müssen erlaubt sein, ohne die Anwendungen zu beeinflussen.
Regel 11: Verteilungsunabhängigkeit: Der Benutzer sollte sich nicht über den Speicherort der Datenbank im Klaren sein, dh ob die Datenbank an mehreren Standorten verteilt ist oder nicht.
Regel 12: Die nonsubversion Regel: Wenn ein System eine geringe Sprache bereitstellt, dann sollte es keine Möglichkeit, zu untergraben und das Umgehen der Integritätsregeln von High-Level-Sprache. Von allen Regeln ist Regel 3 am kontroversesten. Dies liegt an einer Debatte über dreiwertige oder ternäre Logik. Codds Regeln und SQL verwenden ternäre Logik, wobei Null verwendet wird, um fehlende Daten zu repräsentieren und alles mit null zu vergleichen, was zu einem unbekannten Wahrheitszustand führt. Wenn beide Boolesche Werte oder Operanden jedoch falsch sind, ist die Operation falsch. daher sind nicht alle Daten, die fehlen, unbekannt, daher die Kontroverse.