InfoHome | Themen | Projekte | Links | Software |
|
Das relationale DatenbankmodellBisher liegen die Daten unserer Miniwelt in einem abstrakten Modell vor, das die Realität durch Entitytypen und ihre Beziehungen zueinander widerspiegelt. Das ER-Modell ist - wie wir gesehen haben - in der Phase des konzeptionellen Entwurfs einer Datenbank hervorragend geeignet, ein Datenbanksystem ohne Abhängigkeit von der späteren Implementierung zu gestalten. Im Anschluss an den konzeptionellen Entwurf folgt beim Datenbankdesign der logische Entwurf. Hierbei wird ein spezielles Datenbankmodell ausgewählt und das Ergebnis des konzeptionellen Entwurfs auf dieses Datenbankmodell abgebildet. Meist ist noch eine Optimierung anhand unterschiedlicher Qualitätskriterien erforderlich. Die klassischen DBMS-Systeme, die als Software auf Computern zur Verfügung stehen, beruhen alle auf Datenbankmodellen, deren Gestaltungsmöglichkeiten gegenüber dem ER-Modell eingeschränkt sind. Man unterscheidet zwischen dem hierarchischen, dem Netzwerk-, dem relationalen und dem objektorientierten Modell. Das mit Abstand wichtigste ist das relationale Modell, deshalb soll es hier als einziges vorgestellt werden. Es geht zurück auf Arbeiten von E. F. Codd Anfang der 70er Jahre. Auch MySQL verwendet dieses Datenmodell (ebenso wie Access, dBase, Paradox, Oracle usw.). Das relationale Modell beruht auf mathematischen Grundlagen, die allerdings einfach sind und Begriffe der Mathematik verwenden. Konzepte des relationalen DatenbankmodellsRelation / kartesisches ProduktDas relationale Datenbankmodell basiert auf dem mathematischen Begriff der Relation. Eine Relation R ist eine Teilmenge des kartesischen Produkts einer Liste von Wertbereichen W1, W2, ...,Wn: R ⊆ W1 x W2 x ... x Wn n-Tupel
Elemente einer Relation R sind die n-Tupel der Art (v1,v2,...,vn)
mit vi ∈ Wi. Die Größe n bezeichnet man als
Grad der Relation R.
W1 = N
Exemplarisch sind hier vier Kurse K1 bis K4 in Form von Tripeln (3 Tupel) angegeben:
K1 = (13, Analysis 3, 13/II)
Sie bilden die vierelementige Relation KURS = {(13, Analysis 3, 13/II), (2, Short Stories, 12/I), (38, Datenbanken, 12/II), (19, Antihelden, 11/II)} TabellenschreibweiseDie Mengenschreibweise ist unübersichtlich. Daher ist die dazu äquivalente Tabellenschreibweise besser geeignet und üblich: KURS
In der ersten Zeile der Tabelle werden die jeweiligen Attribute als Spaltenköpfe notiert. Sie gehören somit nicht zur Relation. Vielmehr beschreiben sie das Relationenschema, also den hier beschriebenen Entitytyp. Jede weitere Zeile der Tabelle beschreibt ein Tupel der Relation, entspricht also einem Entity. Der allgemeine Aufbau einer Tabelle im Relationenmodell ist demnach gegeben durch:
Den neu eingeführten Begriffen stellen wir in folgender Tabelle eine erläuternde Beschreibung und eine Übersetzung in das ER-Modell gegenüber.
Vergleich relationales/ER-ModellDer Übersetzungstabelle vom relationalen Modell in das ER-Modell entnehmen wir, dass das Relationenschema dem Entitytyp des ER-Modells entspricht. Um über Relationenschemata sprechen zu können, benutzt man die Schreibweise:
Allgemein: R(A1, A2, ..., A3)
Schlüsselattribute zeichnet man durch Unterstreichung aus. Relation als Tabelle
Bei der Darstellung einer Relation als Tabelle muss man immer beachten, dass
die Tabelle lediglich eine übersichtliche Darstellung einer Menge ist. Dies
bedeutet unter anderem, dass in einer Relationentabelle nie zwei gleiche
Zeilen vorkommen dürfen und die Reihenfolge der Zeilen keine Bedeutung hat.
|
© 2004-2024 M. Blanke · Ursulaschule · Kleine Domsfreiheit 11-18 · 49074 Osnabrück |