Skip to content

ER-Diagramme

Alles über ER-Diagramme.

ER (Entity Relation) Diagramme sind bestimmte UML-Diagramme, welche die Beziehungen zwischen Entitätstypen beschreiben. Sie beschreiben eine ganze Datenbankstruktur und modellieren, welche Attribute ein Entitätstyp hat und in welchen Beziehungen einzelne Entitäten zu anderen stehen.

Jeder Entitätstyp wird durch ein Rechteck dargestellt.

Diagram

Jeder Entitätstyp hat zudem Attribute. Diese werden in relationalen Datenbanken als Spalten dargestellt. Im Modell sind diese Ovale, welche mit ihrem Entitätstyp verbunden sind.

Diagram

Zwischen einzelnen Entitätstypen können Beziehungen modelliert werden (siehe: Beziehungen). Bei ER-Diagrammen werden diese zwischen den Entitätstypen mit Rauten dargestellt.

Diagram

(Öffne das Bild extern, um es besser sehen zu können)

Ein Entitätstyp, welcher nicht durch seine eigenen Attribute, sondern nur durch seinen Bezug zu einem anderen Entitätstyp identifiziert werden kann, heißt schwacher Entitätstyp.

Ein Bespiel hierfür wäre die folgende Relation, welche nur durch den Fremdnschlüssel SchulNr identifiziert werden kann.

Schule(_SchulNr_, Name, PLZ, Ort, StraßenNr)
Klasse(_Bezeichnung_, ↑SchulNr, AnzahlSchüler)

Im ER-Diagramm werden solche Entitätstypen mit einer Doppellinie dargestellt.

Diagram

Mehrwertige Attribute werden in einem Oval mit einer Doppellinie dargestellt. In der Überführung ins Relationenmodell wird hier eine eigene Relation für solch ein Attribut benötigt.

Diagram

Im Relationenmodell:

Lehrkraft(_LehrerNr_)
Fach(↑LehrerNr, Fachbezeichnung)

Assoziationen beschreiben die Abhängigkeiten zweier Entitäten. Es gibt gerichtete (unidirektionale) und ungerichtete (bidirektionale) Assoziationen. Gerichtete Assoziationen werden grafisch mit Pfeilen, während ungerichtete Assoziationen mit Linien dargestellt werden. In Modell werden diese mithilfe von Rauten dargestellt

Ungerichtete Assoziation

Diagram

Gerichtete Assoziation

Diagram

Kardinalität beschreibt die quantitative Relation zwischen zwei Entitäten. Hier gibt es drei Möglichkeiten.

  • 1:1 Kardinalität

    Diagram

    Ein Messer kann immer nur eine Scheide haben, und in einer Scheide kann immer nur ein Messer enthalten sein.

  • 1:n Kardinalität

    Diagram

    Eine Wohnung kann mehrere Möbelstücke enthalten, allerdings ist ein konkretes Möbelstück zu einer Zeit immer nur in einer Wohnung.

  • n:m Kardinalität

    Diagram

    Eine Hauswand kann viele Farben haben, und eine Farbe kann auf vielen Hauswänden bestrichen sein. Es ist wichtig zu wissen, dass die konrete Anzahl (m und n) voneinander unabhängig sind.\

Die quantitative Spezifikation von Kardinalität kann weiter verfeinert werden. Multiplizität hier beschreibt, wie viele Entitäten mindestens und maximal mit einer anderen Entität assoziiert sein können.

Diagram

In diesem Beispiel besitzt eine Pferdestall-Entität immer entweder 1 oder 2 Pferde.

Die Beziehung zwischen Entitäten kann auch durch optionalität modelliert werden. Oftmals wird diese mit einer Multiplizität beschrieben (0..n). Diese kann auch als normale Assoziation dargestellt werden:

Diagram

Beschrieben werden kann auch eine Bedingung:

Diagram

Die is a-Beziehung ist das ER-equivalent von Ableitung bei Klassen. Jede is a-Beziehung hat die Kardinalität 1:1 und die Optionalität muss:kann. Auf diese Angabe wird aber typischerweise verzichtet. Durchgesetzt wird die Ableitung mithilfe eines Fremdschlüssels.

Diagram

Im Relationenmodell könnte ein Angestellter durch seine PersonalNr identifiziert werden:

Angestellter(↑PersonalNr, RaumNr, TelefonNr)

Stellt die Beziehungen zwischen drei Entitätstypen dar. Im Relationsmodell entsteht eine weitere Relation, welche die Primärschlüssel der drei Entitäten und u.U. vorhandene Beziehungsattribute enthält.

Diagram

Wird im Relationenmodell wie folgt dargestellt:

Artikel(_ArtikelNr_, ...)
Hersteller(_HerstellerNr_, ...)
Projekt(_ProjektNr_, ...)
; Alle drei Fremdschlüssel sind teil des Primärschlüssels
Lieferung(↑_HerstellerNr_, ↑_ArtikelNr_, ↑_ProjektNr_)

Bei ternären Beziehungen ist es wichtig zu wissen, dass die Beziehungen immer nur dann gelten, wenn die anderen beiden Entitäten present sind. In dem Beispiel also gibt es genau einen Hersteller für die Artikel der Projekte. Die richten Relationen lauten also:

  • Ein Artikel muss von m Projekten betruet werden und wird von genau einem Hersteller hergestellt.
  • Ein Projekt wird von genau einem Hersteller betreut, kann aber n Artikel betreuen.
  • Ein Hersteller kann n Artikel und muss m Projekte betreuen.

Im ER-Diagramm kann man ein zusammengesetztes Attribut, wie z.B. AdresseAdresse verwenden. Im Relationenmodell muss dieses in einzelne Attribute aufgeteilt werden, damit die 1. Normalform eingehalten wird.

Diagram

Kann somit auf das folgende Relationenmodell aufgeteilt werden.

Person(_Name_, StraßeNr, PLZ, Ort)