Kara
Dr. Codd ist der Begründer des relationalen Datenbankmodells. Er veröffentlichte einen zweiteiligen Artikel, der 12 Regeln (oder Prinzipien) auflistet. Diese Regeln sind als die 12 Regeln von Codd bekannt. Die Regeln von Dr. Codd sind ein sehr nützliches Maß (Maßstab) für die Bewertung eines relationalen Datenbanksystems. Diese Regeln werden verwendet, um zu bestimmen, ob ein DBMS relational ist und inwieweit es relational ist. Dr. Codd erwähnte auch, dass nach diesen Regeln noch kein vollständig relationales System verfügbar ist. Die Regeln von Codd sind im Folgenden beschrieben:
0, Regel Null: Gemäß dieser Regel muss jedes System, das als relationales Datenbankmanagementsystem (RDBMS) bezeichnet wird, in der Lage sein, die Daten der Datenbank durch seine relationalen Fähigkeiten zu verwalten.
1. Informationsdarstellung: Alle Informationen in einer relationalen Datenbank werden übersichtlich in Form von Zeilen und Spalten dargestellt. Das bedeutet, dass Informationen in Tabellen gespeichert werden.
2. Garantierter Zugriff: Jeder einzelne atomare Wert in einer relationalen Datenbank ist garantiert logisch zugänglich, indem der Tabellenname, der Primärschlüsselwert und der Spaltenname angegeben werden.
3. Darstellung von Nullwerten: Das System muss in der Lage sein, Nullwerte systematisch darzustellen.
4. Relationaler Katalog: Der Systemkatalog, der die logische Beschreibung
der Datenbank enthält, muss wie gewöhnliche Daten dargestellt werden.
5. Umfassende Datenuntersprache: Ein relationales System kann mehrere Sprachen und verschiedene Modi der Terminalnutzung unterstützen. Es muss jedoch mindestens eine Sprache vorhanden sein, deren Anweisungen in einer wohldefinierten Syntax als Zeichenketten ausdrückbar sind und die Folgendes unterstützen kann:
* Datendefinition
* Ansichtsdefinition
* Datenmanipulation
* Integritätsbedingungen
* Transaktionsgrenzen
6. Ansichten aktualisieren: Alle Ansichten, die theoretisch aktualisierbar sind, sind auch vom System aktualisierbar.
7. Einfüge-, Aktualisierungs- und Löschoperationen: Das System muss in der Lage sein, Daten von Tabellen einzufügen, zu aktualisieren und zu löschen.
8. Physikalische Datenunabhängigkeit: Anwendungsprogramme und Terminalaktivitäten bleiben logisch einheitlich, wenn Änderungen an der Speicherdarstellung oder den Zugriffsmethoden vorgenommen werden.
9. Logische Datenunabhängigkeit: Anwendungsprogramme und Terminalaktivitäten bleiben logisch einheitlich, wenn sich die Struktur von Datenbanktabellen ändert.
10. Integritätsunabhängigkeit: Integritätsbeschränkungen, die für eine bestimmte relationale Datenbank spezifisch sind, müssen in der relationalen Datenuntersprache definierbar und im Katalog speicherbar sein, nicht in den Anwendungsprogrammen. Mindestens die folgenden zwei Integritätsbedingungen müssen unterstützt werden.
Entitätsintegrität: Keine Komponente eines Primärschlüssels darf einen Nullwert haben.
Referenzielle Integrität: Wenn ein Fremdschlüssel in einer relationalen Datenbank definiert ist, muss jeder Fremdschlüsselwert einen übereinstimmenden Primärschlüsselwert in einer anderen Datenbanktabelle haben.
11. Distributionsunabhängigkeit: Ein RDBMS besitzt Distributionsunabhängigkeit. Dies bedeutet, dass bei einer Verteilung der Datenbank die Anwendungsprogramme und Benutzerbefehle nicht geändert werden müssen.
12. Nicht-Subversion: Wenn ein relationales System eine Sprache auf niedriger Ebene (jeweils nur ein Datensatz) hat, kann diese Sprache auf niedrigerer Ebene nicht verwendet werden, um die Integritätsregeln oder Beschränkungen zu umgehen, die in der höheren Ebene ausgedrückt werden (mehrere Datensätze bei a Zeit) relationale Sprache.