Das Relationenmodell...

Wir wissen schon, dass eine relationale Datenbank auf dem Prinzip von Tabellen beruht, die untereinander in Beziehung stehen. Allerdings hat unser ER-Modell rein äußerlich noch nicht viel mit Tabellen gemein. Deswegen müssen wir nun aus unserem bestehenden ER-Modell das Relationenmodell entwickeln.

Jeder Entitätstyp im ER-Modell stellt eine Relation dar, die möglichst auch den gleichen Namen erhält. Den Attributen im ER-Modell müssen wir die entsprechenden Datentypen zuordnen. Sie entsprechen später den Feldern unserer Datenbanktabelle. An dieser Stelle müssen wir sehr gründlich arbeiten, da spätere Änderungen nach der Implementierung oft sehr problematisch sind.

Zum Schluss müssen noch die Beziehungen entsprechend der Kardinalitäten festgelegt werden. Auch hier gibt es feste Regeln.

Schauen wir uns das ganze am praktischen Beispiel unserer CD-Sammlung an:

1. Bildung der Einzelrelationen und Zuordnung der Datentypen...


Nun muss ich noch einiges erklären:

2. Sicherstellen der referentiellen Integrität...

Nun müssen wir noch die Beziehungen zwischen den Relationen entsprechend unserer Kardinalitäten erstellen, um die referentielle Integrität unserer Datenbank sicherzustellen. Damit erreichen wir, dass jeder CD bzw. jedem Interpreten auch die entsprechenden Lieder richtig zugeordnet werden.

Dafür gibt es 3 Regeln:

  1. Bei einer 1:1 Beziehung nehmen wir den Primärschlüssel einer der beiden Relationen und setzen ihn bei der anderen als Fremdschlüssel ein. Dabei ist es völlig egal, welche der beiden Relationen wir wählen. Aber bitte nicht "rum wie num", d.h. beide Primärschlüssel als Fremdschlüssel in die jeweils andere Relation einzusetzen.
  2. Bei einer 1:n Beziehung nehmen wir den Primärschlüssel der 1-er Relation und setzen ihn als Fremdschlüssel in die n-Relation ein.
  3. Bei einer n:m Beziehung wird eine zusätzliche Relation (Zuordnungstabelle) gebildet, die jeweils die Primärschlüssel der n- und m-Relation als Fremdschlüssel enthält. Damit wird die n:m Beziehung in zwei 1:n Beziehungen "aufgelöst". Aber ich habe ja schon erwähnt, dass wir die n:m Beziehung in der Mittelschule weitestgehend vermeiden werden.

Unser vollständiges Relationenmodell hat nun folgendes Aussehen:

...und wir haben damit die Phase der Modellierung abgeschlossen.

In der Datenbanktechnik wird eine Datenbanktabelle auch als Relation bezeichnet.
Die praktische Umsetzung oder Überführung des DB-Modells in ein Datenbankmanagementsystem wird auch als Implementierung bezeichnet.
Referentielle Integrität ist gegeben, wenn jeder Wert eines Fremdschlüssels auch als Wert im entsprechenden Primärschlüssel vorkommt.