02 - ER-Modell

Vom ERM zum Datenbankschema

Was wir können:

Schritt 1:
ERM-Modelle entwickeln (Kommunikation Kunde / Entwickler)

Schritt 2:
Grundlage für eine Implementierung in einem DB-System schaffen (Entwickleraufgabe)

Beispiel: Wahlen / Parteien

Die SPD (die Sozialdemokratische Partei Deutschlands) hat 477.037 Mitglieder, also wieder mehr als die CDU (Christlich Demokratische Union Deutschlands) mit 476.347. Die "kleinen" Parteien im Bundestag haben tatsächlich auch weniger Mitglieder: So kommt die Freie Demokratische Partei (FDP) nur auf 58.675 Mitglieder, die Partei "Die Linke" auf 63.761 und die Partei "Grüne Bündnis90/Die Grünen" sogar nur auf 59.653. (Quelle: http://www.bpb.de)

Frage: Wie würdest Du die Informationen aus diesem Text übersichtlich auf einer Tafel / auf einem Blatt darstellen?

Vom ER-Modell zum Relationalen Datenbankschema

Relationale Datenbanken bestehen aus Tabellen, die man auch Relationen nennt. Daher nennt man die Übersicht über alle Tabellen einer Datenbank relationales Datenbankschema.

Frage: Wie erstellt man aus den einzelnen Komponenten des Entity-Relationship-Modells (Entitätstypen, Beziehungstypen, Attribute) Tabellen?

  • Aus Entitätstypen werden Tabellen (Relationen).
  • Aus den Attributen eines Entitätstyps werden die Spalten(-Überschriften) der Tabelle.

Jetzt ist man eigentlich schon fast fertig! Aber was wird aus den Beziehungstypen?

  • Beziehungstypen mit Kardinalität 1:1 zwischen zwei Entitätstypen A und B können dadurch abgebildet werden, dass der Primärschlüssel einer Tabelle (d.h. ein oder mehrere Attribute, durch die Entitäten dieses Typs unterschieden werden können) als neue Spalte in der anderen Tabelle aufgenommen wird. (Diese neue(n) Spalte(n) nennt man Fremdschlüssel.)
  • Beziehungstypen mit Kardinalität 1:n zwischen Entitätstyp A und Entitätstyp B können dadurch abgebildet werden, dass der Primärschlüssel von Tabelle A als Fremdschlüssel in Tabelle B aufgenommen wird.
  • Für Beziehungstypen mit Kardinalität n:m wird eine neue Tabelle C definiert:

Die Spalten dieser Tabelle bestehen aus den Primärschlüsseln der Tabellen A und B, also aus den Schlüsselattributen der in Beziehung stehenden Entitätstypen A und B.
(In den Zeilen der neuen Tabelle C kann man nachlesen, welche Elemente der beteiligten Tabellen A und B genau zueinander in Beziehung stehen.)

Im einzelnen gelten folgende Abbildungsregeln:

Entitätstyp / Beziehungstyp Abbildungsregel für das relationale Modell
Entitätstyp Tabelle mit den Attributen als Spaltennamen
Beziehungstyp 1:1 Erstelle in einer der beiden Tabellen eine (oder mehrere) Spalten für den Primärschlüssel der anderen Tabelle.
Beziehungstyp 1:n Erstelle in der Tabelle auf der n-Seite des Beziehungstyps Spalte(n) für den Primärschlüssel der anderen Tabelle.
Beziehungstyp n:m Erstelle eine neue Tabelle: Die Spalten(namen) sind die Primärschlüssel der beiden Tabellen, die in Beziehung stehen sollen.

Auftrag:

  1. Überprüfe, ob dein Lösung der ersten Frage mit den Regeln übereinstimmt.
  2. Erkundige dich zu dem Begriff "Chen-Notation"
  3. Recherchiere die Begriffe "Schlüsselattribut", "Primärschlüssel" und "Fremdschlüssel". Gib geeignete Beispiele an, um die Begriffe besser zu verstehen.
start/info/db/02_erm.txt · Zuletzt geändert: 17.05.2015 20:54 von epunkta
www.chimeric.de Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0