Das relationale Datenbankmodell ist bis heute trotz einiger Kritikpunkte ein etablierter Standard für Datenbanken. Das dazugehörige Datenbanksystem heißt relationales Datenbanksystem oder RDBMS bezeichnte
Grundlegende Konzepte
Eine relationale Datenbank kann man sich als eine Sammlung von Tabellen (den Relationen) vorstellen, in welchen Datensätze abgespeichert sind. Jede Zeile (Tupel) in einer Tabelle ist ein Datensatz (record). Jedes Tupel besteht aus einer Reihe von Attributwerten (Attribute = Eigenschaften), den Spalten der Tabelle. Das Relationenschema legt dabei die Anzahl und den Typ der Attribute für eine Relation fest. Das Bild illustriert die Relation R mit Attributen A1 bis An in den Spalten.
Beispiel einer Relation "Buch"
Zum Beispiel wird ein Buch in einer Bibliothek durch den Datensatz (Buch-ID, Autor, Verlag, Verlagsjahr, Titel, Datum der Aufnahme) beschrieben. Ein Datensatz muss eindeutig identifizierbar sein. Das geschieht über einen oder mehrere Schlüssel ( englisch key). In diesem Fall enthält Buch-ID die Schlüssel. Ein Schlüssel darf sich niemals ändern. Er bezieht sich auf den Datensatz und nicht auf die Position in der Tabelle.
| Buch-ID | Autor | Verlag | Verlagsjahr | Titel | Datum |
|---|---|---|---|---|---|
| 1 | Hans Vielschreiber | Musterverlag | 2007 | Wir lernen SQL | 13.01.2007 |
| 2 | J. Gutenberg | Gutenberg und Co | 1452 | Drucken leicht gemacht | 01.01.1452 |
| 3 | G. I. Caesar | Handschriftverlag | -44 | Mein Leben mit Asterix | 16.03.-44 |
| 4 | Galileo Galilei | Inquisition International | 1640 | Eppur si muove | 1641 |
| 5 | Charles Darwin | Vatikan-Verlag | 1860 | Adam und Eva | 1862 |
| 6 | Christian Schade | KVG | 2008 | SQL für Dummies | 04.06.2007 |
Beziehungen zwischen Tabellen
Es können Verknüpfungen zwischen Tabellen gestellt werden, um Beziehungen zwischen den Tabllen auszudrücken. Als Beispiel könnte man folgende verbundene Relationen ansehen:
- Die obige Tabelle "Buch", die aus den Attributen Buch-ID, Autor, Verlag, Verlagsjahr und Datum besteht. Als Schlüssel dient die Buch-ID, die jedes Buch eindeutig indentifizierbar macht.
- Die Tabelle "Nutzer", besteht aus den Attributen Nutzer-ID, Vorname und Nachname , Nutzer-ID ist hier der Schlüssel.
- Zusätzlich braucht man noch eine Tabelle "Entliehen", die Nutzer-ID und Buch-ID enthält.
| Nutzer-ID | Vorname | Nachname |
|---|---|---|
| 10 | Hans | Vielschreiber |
| 11 | Jens | Mittelleser |
| 12 | Erich | Wenigleser |
| Nutzer-ID | Buch-ID |
|---|---|
| 10 | 1 |
| 10 | 2 |
| 10 | 3 |
| 12 | 5 |
| 12 | 6 |
Jede Zeile der Tabelle "Entliehen" ordnet einer Nutzer-ID eine Buch-ID zu. Der Eintrag (10,3) würde also heißen, dass der Nutzer mit der ID 10 ("Hans Vielschreiber") das Buch mit der ID3 ("Mein Leben mit Asterix") entliehen hat. Derselbe Nutzer hat auch das Buch "Drucken leicht gemacht" entliehen, was durch den Tabelleneintrag (10, 2) belegt ist. Als Schlüssel nimmt man hier die Attributmenge (Nutzer-ID, Buch-ID). Gleichzeitig verbindet die Nutzer-ID jeden Eintrag der Tabelle Entliehen mit einem Eintrag der Tabelle Nutzer, sowie die Buch-ID jeden Eintrag von Entliehen mit einem Eintrag der Tabelle Buch verbindet.