Darstellungsweisen

ER-Diagramme

Eine Möglichkeit, wie man eine Datenbank strukturiert darstellen kann, hast du bereits kennengelernt - als ER-Diagramm.

(A1)

Eine Universität bietet Veranstaltungen an, die an einem bestimmten Wochentag in einem bestimmten Zeitblock in einem bestimmten Raum stattfinden. Jede Veranstaltung wird von genau einer Dozentin angeboten, von dem Nachname, Vorname und eine eindeutige AngestelltenId bekannt sind.

Ein Inhaltsmodul umfasst alle Veranstaltungen, die in diesem Modul angeboten werden. Für jedes Inhaltsmodul gibt es eine eindeutige Modulnummer, eine Bezeichnung und die Zahl der CreditPoints, die die Studierenden angerechnet werden.

Studierende besuchen Veranstaltungen. Studierende haben einen Namen und Vornamen und eine eindeutige Matrikelnummer.

Erstelle ein Entity-Relationship-Diagramm, das die beschriebene Struktur darstellt. Welche Entscheidung musst du bezüglich der Informationen Zeitblock, Raum und Wochentag treffen? Mache das ER-Diagramm möglichst einfach.

Kennzeichne die Kardinalitäten und die Primärschlüssel.

Erkennst du ein Problem? Wie könntest du es lösen?

Lösungsvorschlag

Anmerkungen:

Attribute, die einen Primärschlüssel darstellen werden im ER Diagramm unterstrichen, Fremdschlüssel werden in ER Diagrammen als Attribut eingetragen und auch nicht gekennzeichnet.

Man hätte Wochentag, Block und Raum auch als weitere Entitäten auffassen können.

Die Veranstaltungen haben keinen offensichtlichen Primärschlüssel. Hier könnte ein Surrogatschlüssel VeranstaltungsID Abhilfe schaffen.

Wir betrachten ein weiteres Beispiel:

(A2)

Beschreibe stichwortartig, welche Situation hier modelliert wird.

Erläutere, welche Bedeutung die Attribute an der Beziehungsraute besitzt haben.

Da jeder Fahrzeugbesitz mit einer An- oder Abmeldung des KFZ einhergeht, macht es Sinn, die Informationen Kennzeichen, An- und Abmeldedaten der Beziehung „besitzt“ zuzuschreiben. Wenn man das ER Diagramm jetzt in Datenbank-Tabellen überführen möchte, benötigt man also für die Beziehungsraute - wie auch schon für die Attribute - eine eigene Tabelle. Außerdem werden Fremdschlüssel im ER-Diagramm nicht dargestellt, es ist in dieser Hinsicht also unvollständig, obwohl es natürlich einen ausgezeichneten Überblick über die Beziehungen zwischen den Entitäten bietet.

Relationales Modell

Wenn man das ER-Modell in ein relationales Modell überführen möchte, überlegt man sich, welche Tabellen mit welchen Spalten man erstellen würde, um die Datenbank zu modellieren.

Grundregel: Jede Entität und jede Beziehung wird in Form einer eigenen Tabelle (Relationenschema) abgebildet. Eine Beziehungstabelle hat als Attribute die Primärschlüssel der beteiligten Tabellen (als Fremdschlüssel), sowie alle Attribute, die zur Beziehung gehören.

Schreibweise

Das relationale Datenbankschema einer Datenbank (Darstellung als Tabellen) besteht für jede Tabelle aus einer Zeile:

TabellenName(Attribut1, Attribut2, Attribut2↑, …, AttributN)