Datenbanken

Relationales Datenmodell

 aufwärts

Relation

Definition:  Eine Domain ist eine Menge von Werten (Wertebereich).

Beispiel:  Folgende Mengen sind Domains:

Definition:  Seien D1, ..., Dn Domains. Das kartesische Produkt

D1kreuz ... kreuzDn

ist die Menge aller n-Tupel

(d1, ..., dn)   mit   di Element Di,   i = 1, ..., n

Eine Relation über D1, ..., Dn ist eine Teilmenge des kartesischen Produkts D1kreuz ... kreuzDn.

Diese Definitionen stimmen mit den mengen­theoretischen Definitionen des kartesischen Produkts und der Relation überein.

Beispiel:  Seien D1 = integer,  D2 = string,  D3 = string,  D4 = date. Dann ist folgende Menge R eine Relation über D1, ..., D4 :

R  =  { (101, Meyer, Heinz, 12.03.1962),   (102, Schmidt, Heinz, 21.05.1948),   (103, Meyer, Anna, 12.03.1962),   (104, Meyer, Heinz, 21.05.1948) }

Wesentlich über­sichtlicher ist es, wenn die Relation in Form einer Tabelle geschrieben wird:

101  MeyerHeinz  12.03.1962
102Schmidt  Heinz21.05.1948
103MeyerHeinz21.05.1948
104MeyerAnna12.03.1962

 

Attribut

Auf die einzelnen Felder der obigen Tabelle könnte man im Prinzip durch Angabe des Zeilen- und Spaltenindex zugreifen. Z.B. enthält das Feld R(4, 3) den String 'Anna'.

Allerdings ist die Reihenfolge der Zeilen in der Tabelle beliebig, denn eine Tabelle ist eine Relation, und eine Relation ist eine Menge, in der es auf die Reihenfolge der Elemente, hier also der Zeilen, nicht ankommt.

Die Lösung ist, dass über die Tabellen­einträge selber eindeutig eine Zeile identifiziert wird. In obiger Tabelle sind dies die Einträge in der ersten Spalte, die gewissermaßen als Zeilennummern aufgefasst werden können. Diese Spalte stellt hier den Schlüssel der Tabelle dar.

Die Reihenfolge der Spalten in einer Tabelle ist zwar fest, aber es besteht kein Zusammenhang zwischen der Reihenfolge und dem Inhalt. Dass etwa der Vorname in Spalte 3 erscheint, ist nicht zwingend, genausogut könnte der Vorname in Spalte 2 stehen und der Nachname in Spalte 3.

Um gezielt auf die Spalten zugreifen zu können, werden daher die Spalten benannt, die entsprechenden Bezeichnungen heißen Attribute.

Definition:  Ein Relationen­schema ist ein 4-Tupel (T, A, D, S), bestehend aus

Für die obige Beispiel­relation R ist folgendes Relationen­schema sinnvoll:

Die Tabelle sieht mit dem Relationen­namen und den Attributen als Spalten­überschriften wie folgt aus:

PERSON    IdNachnameVornameGebDat
101  MeyerHeinz  12.03.1962
102Schmidt  Heinz21.05.1948
103MeyerHeinz21.05.1948
104MeyerAnna12.03.1962

 

Auf den Eintrag 'Anna' kann nun durch PERSON[Id=104, Vorname] zugegriffen werden. In der Datenbank-Anfragesprache SQL wird dieser Zugriff so formuliert:

SELECT Vorname
FROMPERSON
WHEREId=104

Das Ergebnis ist in diesem Fall eine Tabelle, deren einziger Eintrag 'Anna' ist:

   Vorname
Anna

 

 

Weiter mit:   [Datenbankoperationen]   oder   up

 

homeH.W. Lang   FH Flensburg   lang@fh-flensburg.de   Impressum   ©   Created: 08.11.1999   Updated: 11.01.2008   Valid HTML 4.01 Transitional