AP1

ER-Diagramm und Chen-Notation

2 Min. Lesezeit

Ein ER-Diagramm (Entity-Relationship-Diagramm, ERD) stellt ein Datenmodell grafisch dar: welche Objekte eine Datenbank speichern soll, welche Eigenschaften sie haben und wie sie zusammenhängen. Es entsteht vor den Tabellen und ist unabhängig vom späteren Datenbanksystem (konzeptioneller Entwurf).

Grundbegriffe

  • Entität: Ein einzelnes, eindeutig unterscheidbares Objekt, z. B. die Abteilung „Vertrieb“.
  • Entitätstyp: Gleichartige Entitäten, zusammengefasst unter einem Namen, z. B. Abteilung. Wird später zur Tabelle.
  • Attribut: Eigenschaft eines Entitätstyps, z. B. Bezeichnung. Wird später zur Spalte.
  • Schlüsselattribut: Attribut, das jede Entität eindeutig identifiziert, z. B. AbtNr. Wird später zum Primärschlüssel.
  • Beziehungstyp: Zusammenhang zwischen Entitätstypen, z. B. „Abteilung beschäftigt Mitarbeiter“. Ein Beziehungstyp kann eigene Attribute haben, z. B. „seit“.

Elemente der Chen-Notation

SymbolBedeutungBeispiel
RechteckEntitätstypAbteilung
RauteBeziehungstypbeschäftigt
OvalAttributName
Oval, unterstrichenSchlüsselattributPersNr
1, n, m an der LinieKardinalität1:n

ER-Diagramm in Chen-Notation: Die Entitätstypen Abteilung und Mitarbeiter als Rechtecke sind über die Raute „beschäftigt“ verbunden, mit 1 an der Abteilung und n am Mitarbeiter. Abteilung hat die Attribute AbtNr (unterstrichen, Schlüssel) und Bezeichnung, Mitarbeiter hat PersNr (unterstrichen) und Name, die Beziehung hat das Attribut seitER-Diagramm in Chen-Notation: Die Entitätstypen Abteilung und Mitarbeiter als Rechtecke sind über die Raute „beschäftigt“ verbunden, mit 1 an der Abteilung und n am Mitarbeiter. Abteilung hat die Attribute AbtNr (unterstrichen, Schlüssel) und Bezeichnung, Mitarbeiter hat PersNr (unterstrichen) und Name, die Beziehung hat das Attribut seit

Gelesen: Eine Abteilung beschäftigt n Mitarbeiter, jeder Mitarbeiter gehört zu genau einer Abteilung. Die Zahl an einem Entitätstyp gibt an, wie viele davon zu einer Entität der Gegenseite gehören.

Kardinalitäten

Die Kardinalität beschreibt, mit wie vielen Entitäten der anderen Seite eine Entität in Beziehung stehen kann.

KardinalitätBedeutungBeispiel
1:1Jeder Entität A ist höchstens eine Entität B zugeordnet und umgekehrt.Mitarbeiter hat Dienstausweis
1:nEiner Entität A sind mehrere B zugeordnet, jedes B gehört zu genau einem A.Abteilung beschäftigt Mitarbeiter
n:mEiner Entität A sind mehrere B zugeordnet und umgekehrt.Schüler belegt Kurs

Genauer ist die (min,max)-Notation. Sie steht an jedem Entitätstyp und gibt an, wie oft eine seiner Entitäten mindestens und höchstens an der Beziehung teilnimmt, z. B. Abteilung (0,n) und Mitarbeiter (1,1). Damit steht sie auf der anderen Seite als die Chen-Kardinalität.

In Datenbankwerkzeugen ist die Krähenfußnotation (Crow's Foot) verbreitet: Entitätstypen sind Kästen mit Attributliste, die Kardinalität steht als Linienende. Ein Strich bedeutet eins, der gespreizte „Krähenfuß“ viele.

Vom ER-Diagramm zu Tabellen

  • Entitätstyp: wird zur Tabelle, die Attribute werden Spalten, das Schlüsselattribut wird Primärschlüssel.
  • 1:1: Eine der beiden Tabellen bekommt den Primärschlüssel der anderen als Fremdschlüssel. Oft lassen sich beide Tabellen auch zusammenlegen.
  • 1:n: Die Tabelle auf der n-Seite bekommt den Fremdschlüssel. Im Beispiel erhält Mitarbeiter die Spalte AbtNr, auch das Attribut „seit“ landet dort.
  • n:m: Lässt sich nicht direkt umsetzen. Eine Zwischentabelle nimmt die Primärschlüssel beider Seiten als Fremdschlüssel auf, zusammen bilden sie ihren Primärschlüssel. Attribute der Beziehung stehen ebenfalls in der Zwischentabelle.

m:n-Beziehung zwischen Student und Vorlesung, aufgelöst über die Zwischentabelle Belegung: Student 1 zu n Belegung und Vorlesung 1 zu n Belegung; die Belegung enthält die Fremdschlüssel MatrNr und VorlNrm:n-Beziehung zwischen Student und Vorlesung, aufgelöst über die Zwischentabelle Belegung: Student 1 zu n Belegung und Vorlesung 1 zu n Belegung; die Belegung enthält die Fremdschlüssel MatrNr und VorlNr