Relationale Datenbanksysteme

Aufbau eines relationalen Datenbankmanagmentsystems

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:

Relation "Nutzer"
Nutzer-ID Vorname Nachname
10 Hans Vielschreiber
11 Jens Mittelleser
12 Erich Wenigleser
Relation "Entliehen"
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.