Relationale Datenbank
Eine relationale Datenbank ist eine Datenbank, die auf dem Entity-Relationship-Modell basiert. Die Daten werden dabei in Form von zweidimensionalen Tabellen verwaltet, die über Schlüssel miteinander verknüpft werden können. Die meisten in der Praxis eingesetzten Datenbanksysteme (Relationale Datenbank-Verwaltungssystem, kurz RDBMS) sind für relationale Datenbanken konzipiert. Im allgemeinen Sprachgebrauch ist deshalb oft eine Relationale Datenbank bzw. ein relationales Datenbanksystem gemeint, wenn von Datenbanken die Rede ist.
Für relationale Datenbanken gibt es mit SQL eine verbreitete und teilweise standardisierte Abfragesprache.
Früher wurden in der betrieblichen Datenverarbeitung hierarchische Datenbanken verwendet. Sie kommen in Spezialfällen auch heute noch zum Einsatz.
Zum Teil werden die relationalen Datenbanken durch objektorientierte Datenbanken abgelöst. Relationale Datenbanken sind aber derzeit immer noch die verbreitetste Datenbankform und es ist nicht klar, ob sich die objektorientierten Datenbanken durchsetzen werden. Die großen Datenbankhersteller fügen ihren relationalen Datenbanken objektorientierte Eigenschaften hinzu.
Theorie der Relationalen Datenbanken
Die Grundlagen der Theorie der relationalen Datenbank wurden von Edgar F. Codd in den 1960ern und 1970ern gelegt und in seiner Arbeit "A Relational Model of Data for Large Shared Data Banks" (erschienen in Communications of the ACM, Vol. 13, No. 6, June 1970, S. 377-387) beschrieben.
Die erste kommerziell erfolgreiche relationale Datenbank wurde jedoch erst Ende der 1970er von der Firma Oracle auf den Markt gebracht.
1986 hat Codd in der Computer World einen zweiteilligen Artikel mit 12 strengen Anforderungen veröffentlicht, welche ein RDBMS aus seiner Sicht erfüllen muss. Dabei sind die Regeln so streng, das kein zur Zeit verfügbares Datenbanksystem alle erfüllt. Besondere Probleme bereiten die Regeln 6, 9, 10, 11 und 12. Da es aktuell (Februar 2004) noch keine eindeutigen, allgemeinverständliche Übersetzungen gibt, sind hier die Originalüberschriften auf Englisch aufgeführt:
- The Information Rule
- Guaranteed Access Rule
- Systematic Treatment of Null Values
- Dynamic On-line Catalog Based on the Relational Model
- Comprehensive Data Sublanguage Rule
- View Update Rule
- High-level Insert, Update and Delete
- Physical Data Independence
- Logical Data Independence
- Integrity Independence
- Distribution Independence
- Nonsubversion Rule
Zusätzlich hat Codd noch die Regel 0 definiert, wonach jeder Zugriff nur durch relationale Fähigkeiten stattfinden darf.
Die Grundregeln für eine relationale Datenbank (nach Codd) lassen sich wie folgt beschreiben:
- Jede Relation ist eine zweidimensionale Tabelle und entspricht einem Entity-Typ
- Jede Zeile dieser Tabelle wird Tupel genannt und beschreibt ein konkretes Entity des Entity-Typs, den die Tabelle darstellt
- Jede Spalte der Tabelle entspricht einem Attribut des Entity-Typs. Die konkreten Entities werden somit durch die entsprechenden Attributwerte beschrieben.
- Der Grad einer Relation ist die Anzahl der Attribute
- Existiert für ein Attribut eine begrenzte Anzahl von Attributwerten, so wird die Zusammenfassung aller Attributwerte für dieses Attribut Domäne genannt
- Die Existenz zweier identischer Zeilen ist ungültig
- Es ist nicht relevant, in welcher Reihenfolge Zeilen bzw. Spalten der Tabelle angeordnet sind
- Attribute sind atomar
Siehe auch
- Datenbankmanagementsystem (DBMS)
- Fremdschlüssel
- Hierarchisches Datenbankmodell
- Netzwerkdatenbankmodell
- Normalisierung
- Primärschlüssel
Weblinks
Literatur
- Stahlknecht, P./Hasenkamp, U.; Einführung in die Wirtschaftsinformatik; Springer; Berlin; 2002