Informatik

ER-Modell: Entitäten und Beziehungen modellieren

ER-Modell: Entitäten und Beziehungen modellieren
ER-Modell: Entitäten und Beziehungen modellieren
Für Quiz, Lückentext, Lernkarten und Fortschritt ist JavaScript nötig. Alle Inhalte und Lösungen bleiben direkt lesbar.

Ein Entity-Relationship-Modell, kurz ER-Modell oder ERM, beschreibt die fachlich wichtigen Daten eines abgegrenzten Wirklichkeitsausschnitts: Welche Arten von Dingen gibt es, welche Eigenschaften haben sie und wie hängen sie zusammen? Das zugehörige ER-Diagramm (ERD) macht diese Struktur sichtbar, bevor daraus Datenbanktabellen entstehen.

Auf dieser Seite lernst du, Entitätstypen, Attribute, Schlüssel und Beziehungen zu erkennen, Kardinalitäten sicher zu lesen und ein einfaches ER-Modell in ein relationales Schema zu überführen.

Deine Lernziele

Hake ab, was du schon kannst — und komm am Ende hierher zurück!

Was bildet ein ER-Modell ab?

Stell dir vor, eine Schule plant eine Datenbank. Sie muss nicht die ganze Wirklichkeit erfassen. Sie wählt nur das aus, was für ihren Zweck wichtig ist, zum Beispiel Lernende, Kurse und Belegungen. Diese bewusste Vereinfachung heißt konzeptuelle Modellierung.

Ein ER-Modell beschreibt dabei das fachliche Was. Technische Entscheidungen wie ein bestimmtes Datenbanksystem folgen später. Das Modell hilft deshalb auch Menschen, die keine Datenbank programmieren, Anforderungen zu prüfen.

Definition

Entität und Entitätstyp

Eine Entität ist ein einzelnes, identifizierbares Objekt, zum Beispiel die konkrete Studentin Aylin. Ein Entitätstyp fasst gleichartige Entitäten zusammen, zum Beispiel Student.

Definition

Attribut und Beziehung

Ein Attribut beschreibt eine Eigenschaft eines Entitätstyps, zum Beispiel Name bei Student. Eine Beziehung verbindet Entitäten, zum Beispiel: Ein Student belegt ein Seminar. Auf der Typebene heißt das Beziehungstyp.

In der Chen-Notation werden Entitätstypen als Rechtecke, Beziehungen als Rauten und Attribute als Ovale dargestellt. Andere Notationen sehen anders aus, beschreiben aber dieselben fachlichen Strukturen.

Teste dich
Frage 1 von 2LeichtWas ist im Satz „Studentin Aylin belegt das Seminar Datenbanken“ eine einzelne Entität?
Lösung: Studentin Aylin — Eine Entität ist ein konkretes Einzelobjekt. Student wäre der zugehörige Entitätstyp.
Frage 2 von 2MittelWarum bildet ein ER-Modell nicht die gesamte Wirklichkeit ab?
Lösung: Es wählt die für den Modellierungszweck relevanten Daten aus. — Ein Modell ist eine zweckbezogene Vereinfachung. Unwichtige Einzelheiten werden bewusst nicht aufgenommen.
Wie werden Objekte eindeutig erkannt?

Eine Datenbank muss gleichartige Entitäten unterscheiden können. Dafür braucht jeder Entitätstyp einen Schlüssel.

Definition

Primärschlüssel

Ein Primärschlüssel ist ein Attribut oder eine Attributkombination, die jede Entität eindeutig identifiziert. Seine Werte dürfen nicht doppelt und nicht leer sein. Ein Schlüssel kann natürlich vorhanden oder künstlich eingeführt sein, zum Beispiel eine Kundennummer.

Ein starker Entitätstyp lässt sich durch eigene Attribute identifizieren. Gebäude ist stark, wenn jedes Gebäude eine eindeutige GebäudeID besitzt.

Ein schwacher Entitätstyp benötigt zusätzlich den Schlüssel einer verbundenen starken Entität. Eine Raumnummer wie 101 kann in mehreren Gebäuden vorkommen. Ein Raum wird deshalb durch die Kombination (GebäudeID, Raumnummer) eindeutig.

Beispiel

Anforderung: Jedes Gebäude hat eine eindeutige GebäudeID. Innerhalb eines Gebäudes sind die Raumnummern eindeutig, aber dieselbe Raumnummer darf in verschiedenen Gebäuden vorkommen.

  1. Gebäude ist stark. Sein Primärschlüssel ist GebäudeID.
  2. Raum ist schwach. Raumnummer ist nur ein partieller Schlüssel, also nur innerhalb eines Gebäudes eindeutig.
  3. Der vollständige Schlüssel von Raum lautet (GebäudeID, Raumnummer).
  4. GebäudeID verweist bei Raum zugleich auf das zugehörige Gebäude.

So können Gebäude 1, Raum 101 und Gebäude 2, Raum 101 gleichzeitig existieren, ohne verwechselt zu werden.

Merke

Ein Attribut ist nicht schon deshalb ein Schlüssel, weil es wichtig klingt. Entscheidend ist, ob sein Wert jede Entität im vorgesehenen Datenbestand eindeutig identifiziert.

Teste dich
Frage 1 von 2LeichtWelcher Begriff bezeichnet ein Attribut oder eine Attributkombination, die jede Entität eindeutig identifiziert?
Lösung: Primärschlüssel — Der Primärschlüssel unterscheidet die Entitäten eines Typs eindeutig voneinander.
Frage 2 von 2MittelWarum genügt Raumnummer nicht als Schlüssel, wenn dieselbe Nummer in mehreren Gebäuden vorkommen darf?
Lösung: Die Raumnummer ist nur innerhalb eines Gebäudes eindeutig. — Der vollständige Schlüssel muss Gebäude und Raum unterscheiden. Deshalb wird (GebäudeID, Raumnummer) benötigt.
Wie viele Entitäten dürfen verbunden sein?

Die Kardinalität beschreibt, wie viele Entitäten der einen Seite mit Entitäten der anderen Seite verbunden sein dürfen. Bei einer binären Beziehung sind drei Grundformen besonders wichtig.

FormBedeutungBeispiel
1:1Auf beiden Seiten ist höchstens eine Zuordnung möglich.Mitarbeiter – Mitarbeiterausweis
1:nEine Entität der ersten Seite kann vielen der zweiten zugeordnet sein; jede Entität der zweiten Seite höchstens einer der ersten.Kunde – Bestellung
n:mAuf beiden Seiten sind mehrere Zuordnungen möglich.Lieferant – Produkt

Lies die Namen immer mit: Bei Kunde 1:n Bestellung kann ein Kunde mehrere Bestellungen aufgeben, aber jede Bestellung gehört zu höchstens einem Kunden.

Die Grundformen sagen noch nicht sicher, ob eine Teilnahme verpflichtend ist. Dafür gibt die Min-Max-Notation für eine Instanz ein Paar (Minimum, Maximum) an:

  • (0,1): optional, höchstens eine Zuordnung;
  • (1,1): genau eine Zuordnung;
  • (0,N): optional, beliebig viele Zuordnungen;
  • (1,N): mindestens eine, möglicherweise viele Zuordnungen.
Gut zu wissen

Kardinalitätsangaben werden je nach Notation an unterschiedlichen Kantenpositionen gelesen. Verlasse dich deshalb nicht nur auf die Stellung einer Zahl. Formuliere beide Richtungen als Satz: „Ein Kunde kann …; jede Bestellung …“

Teste dich
Frage 1 von 3LeichtWelche Kardinalität passt zu „Ein Kunde kann mehrere Bestellungen aufgeben; jede Bestellung gehört zu einem Kunden“?
Lösung: 1:n von Kunde zu Bestellung — Entscheidend sind beide Richtungen: Kunde zu Bestellung ist „viele“, Bestellung zu Kunde ist „eins“.
Frage 2 von 3MittelWas drückt (0,N) aus?
Lösung: Eine Teilnahme ist optional; wenn sie stattfindet, sind mehrere Zuordnungen möglich. — Die erste Zahl ist das Minimum, die zweite das Maximum. 0 erlaubt Nichtteilnahme, N mehrere Zuordnungen.
Frage 3 von 3SchwerIn einem Modell darf ein Produkt von mehreren Lieferanten stammen, und jeder Lieferant darf mehrere Produkte liefern. Welche Form ist nötig?
Lösung: n:m — Da auf beiden Seiten mehrere Partner möglich sind, handelt es sich um eine n:m-Beziehung.
Wie entsteht ein vollständiges ER-Modell?

Beginne nicht mit Symbolen. Kläre zuerst die Bedeutung der Anforderungen. Ein verlässlicher Ablauf besteht aus fünf Schritten:

  1. Relevante Objekte als Entitätstypen bestimmen.
  2. Eigenschaften als Attribute ergänzen.
  3. Primärschlüssel festlegen.
  4. Beziehungen benennen.
  5. Kardinalitäten und verpflichtende Teilnahmen in beide Richtungen prüfen.
Beispiel

Anforderung: Ein Kunde kann mehrere Bestellungen aufgeben. Jede Bestellung gehört zu genau einem Kunden. Eine Kundennummer identifiziert jeden Kunden eindeutig.

Schritt 1 – Entitätstypen: Kunde und Bestellung sind eigenständige fachliche Objekttypen.

Schritt 2 – Attribute und Schlüssel: Kundennummer ist Primärschlüssel von Kunde. Auch Bestellung benötigt einen eigenen eindeutigen Bestellschlüssel.

Schritt 3 – Beziehung: Die Beziehung heißt gibt auf.

Schritt 4 – Kardinalität: Von Kunde zu Bestellung gilt 1:n. Eine Bestellung hat genau einen Kunden; ein Kunde kann mehrere Bestellungen haben.

Schritt 5 – Gegenprobe: Das Modell erlaubt mehrere Bestellungen desselben Kunden, aber keine Bestellung mit zwei verschiedenen Kunden. Damit bildet es die Anforderung ab.

Ein Diagramm allein genügt nicht immer. Ergänze Regeln, die sich grafisch nicht eindeutig ausdrücken lassen, als klare Geschäftsregeln. Dazu gehören etwa Mindestzahlen, zeitliche Bedingungen oder Berechnungsregeln.

Teste dich
Frage 1 von 2MittelEine Anforderung lautet: „Die Gage hängt vom konkreten Vertrag eines Schauspielers für einen Film ab.“ Wo gehört Gage hin?
Lösung: Als Attribut der Beziehung zwischen Schauspieler und Film — Die Gage beschreibt weder den Schauspieler noch den Film allein, sondern ihren konkreten Zusammenhang.
Frage 2 von 2SchwerWie prüfst du am besten, ob dein Modell die Anforderung trifft?
Lösung: Du formulierst jede Beziehung in beide Richtungen und testest erlaubte sowie verbotene Beispieldaten. — Eine semantische Gegenprobe deckt auf, ob das Schema ungültige Zustände erlaubt oder gültige ausschließt.
Wie wird aus dem ER-Modell ein Tabellenschema?

Im relationalen Modell werden Entitätstypen zu Tabellen und Attribute zu Spalten. Schlüssel sichern die Identifikation und die Verknüpfung.

Definition

Fremdschlüssel

Ein Fremdschlüssel ist ein Attribut, das auf den Primärschlüssel einer anderen Tabelle verweist. Referenzintegrität bedeutet: Ein Fremdschlüsselwert darf nur auf einen tatsächlich vorhandenen Schlüsselwert zeigen.

Für die Grundfälle gelten diese Abbildungsregeln:

  • Starker Entitätstyp: eine eigene Tabelle mit seinem Primärschlüssel.
  • Schwacher Entitätstyp: eine eigene Tabelle; ihr Primärschlüssel enthält den Schlüssel der starken Entität und den partiellen Schlüssel.
  • 1:1-Beziehung: Meist erhält eine der Tabellen den Fremdschlüssel der anderen. Pflichtteilnahme und mögliche Nullwerte helfen bei der Wahl.
  • 1:n-Beziehung: Die Tabelle auf der n-Seite erhält den Fremdschlüssel der 1-Seite.
  • n:m-Beziehung: Es entsteht eine eigene Beziehungstabelle mit den Schlüsseln beider Seiten; Beziehungsattribute kommen hinzu.
Beispiel

Aus Kunde 1:n Bestellung wird:

Kunde(Kundennummer, …)

Bestellung(Bestellschlüssel, Kundennummer, …)

Bestellung.Kundennummer ist Fremdschlüssel auf Kunde.Kundennummer. Er steht auf der n-Seite, weil viele Bestellungen dieselbe Kundennummer enthalten dürfen.

Aus der n:m-Beziehung Lieferant liefert Produkt wird dagegen eine eigene Tabelle:

Liefert(Lieferantenschlüssel, Produktschlüssel)

Die Kombination der beiden Fremdschlüssel bildet gewöhnlich den Primärschlüssel, sofern dasselbe Paar nur einmal gespeichert werden soll.

Teste dich
Frage 1 von 2LeichtWo liegt bei einer 1:n-Beziehung gewöhnlich der Fremdschlüssel?
Lösung: In der Tabelle auf der n-Seite — Mehrere Zeilen der n-Seite dürfen auf dieselbe Zeile der 1-Seite verweisen.
Frage 2 von 2MittelWie wird eine n:m-Beziehung gewöhnlich relational umgesetzt?
Lösung: Durch eine eigene Tabelle mit Fremdschlüsseln beider beteiligten Tabellen — Ein einzelner Fremdschlüssel könnte auf seiner Seite nicht mehrere Partner ohne Wiederholungsgruppen darstellen.
Welche Modellierungsfehler sind typisch?

Ein formal ordentliches Diagramm kann fachlich trotzdem falsch sein. Prüfe deshalb besonders diese Fehlerquellen:

  • Eigenschaft und Objekt verwechseln: Ein eigener Entitätstyp ist sinnvoll, wenn etwas selbst Beziehungen, Attribute oder eine eigene Identität besitzt.
  • Optionalität vergessen: n allein sagt nicht, ob auch null Zuordnungen erlaubt sind.
  • Mehrwertige Angaben vermischen: Zusammengehörende Werte müssen zusammen modelliert werden. Getrennte Listen für Kurszeiten und Räume könnten falsche Zeit-Raum-Kombinationen erzeugen.
  • Ternäre Beziehungen blind zerlegen: Der Zusammenhang „Lieferant liefert Bauteil für Produkt“ umfasst alle drei Beteiligten gemeinsam. Zwei oder drei binäre Beziehungen können zusätzliche, nie behauptete Kombinationen entstehen lassen.
  • Redundanz übersehen: Werden dieselben Personendaten in mehreren Rollentypen getrennt gespeichert, können widersprüchliche Adressen entstehen.
Beispiel

Gegeben sind die Aussagen:

  • Bosch liefert ein Navigationssystem für den Golf.
  • Sony liefert ein Navigationssystem für den Auris.

Die ternäre Beziehung speichert jeweils genau das Tripel aus Lieferant, Produkt und Bauteil. Würdest du nur Lieferant–Bauteil und Produkt–Bauteil speichern, könnte eine spätere Verknüpfung fälschlich behaupten, Bosch liefere auch das Navigationssystem für den Auris. Die ursprüngliche Information „wer liefert welches Bauteil für welches Produkt?“ wäre verloren.

Ein gutes ER-Modell ist:

  • korrekt: Es erlaubt nur Zusammenhänge der betrachteten Miniwelt.
  • vollständig: Es enthält alle für den Zweck nötigen Daten.
  • minimal: Es vermeidet unnötige Doppelungen.
  • lesbar: Benennungen und Aufbau sind übersichtlich.
  • verständlich: Fachkundige Personen können die Bedeutung nachvollziehen.
Merke

Zuerst kommt die Semantik, dann die Grafik. Teste dein Modell mit konkreten Beispieldaten und frage: „Welche falschen Zustände erlaubt es? Welche richtigen Zustände verhindert es?“

Teste dich
Frage 1 von 1SchwerWarum darf die ternäre Beziehung liefert(Lieferant, Produkt, Bauteil) nicht ohne weitere Prüfung in binäre Beziehungen zerlegt werden?
Lösung: Die Zerlegung kann die gemeinsame Zuordnung verlieren und zusätzliche falsche Kombinationen erzeugen. — Entscheidend ist, ob der ursprüngliche dreifache Zusammenhang nach der Zerlegung verlustfrei rekonstruierbar bleibt.
Karteikasten
Karteikasten

Überlege zuerst selbst und drehe die Karte anschließend zum Prüfen um.

Alles auf einen Blick
Mindmap
  • ER-Modell
    • beschreibt: relevanten Wirklichkeitsausschnitt
    • besteht aus: Entitätstypen, Attributen, Beziehungen
    • identifiziert durch: Primärschlüssel
    • unterscheidet: starke und schwache Entitätstypen
    • begrenzt durch: Kardinalität und Partizipation
    • wird umgesetzt als: Tabellen, Fremdschlüssel, Beziehungstabellen
    • wird geprüft auf: Korrektheit, Vollständigkeit, Minimalität, Lesbarkeit
Abschluss-Check

Prüfe nun, ob du vom Sachverhalt zum Modell und vom Modell zu Tabellen wechseln kannst.

Teste dich
Frage 1 von 5LeichtWelche Aussage unterscheidet Entität und Entitätstyp korrekt?
Lösung: „Aylin“ kann eine Entität sein; Student ist der Entitätstyp. — Frage dich: Geht es um ein konkretes Einzelobjekt oder um die Klasse gleichartiger Objekte?
Frage 2 von 5MittelRäume sind nur innerhalb ihres Gebäudes eindeutig nummeriert. Welcher Primärschlüssel passt für Raum?
Lösung: (GebäudeID, Raumnummer) — Die Raumnummer ist nur ein partieller Schlüssel. Erst zusammen mit der GebäudeID entsteht eine eindeutige Identifikation.
Frage 3 von 5MittelEin Seminar kann von vielen Studierenden belegt werden, und Studierende können mehrere Seminare belegen. Wie wird die Beziehung relational umgesetzt?
Lösung: Durch eine eigene Belegungstabelle mit den Schlüsseln von Student und Seminar — Beide Seiten erlauben mehrere Zuordnungen. Deshalb braucht die n:m-Beziehung eine eigene Tabelle.
Frage 4 von 5SchwerEin Diagramm zeigt nur n an einer Beziehungskante. Welche wichtige Frage bleibt offen?
Lösung: Ob die Teilnahme optional ist oder mindestens eine Zuordnung verlangt wird — Eine maximale Angabe wie n beantwortet nicht die Mindestbeteiligung. Dafür brauchst du eine klare Textregel oder Min-Max-Werte.
Frage 5 von 5SchwerEine Zerlegung erzeugt beim Zusammenführen zusätzliche Datensätze, die im ursprünglichen Zusammenhang nicht vorkamen. Was folgt daraus?
Lösung: Die Zerlegung ist verlustbehaftet und bildet die Semantik nicht zuverlässig ab. — Vergleiche die rekonstruierten Tupel mit den ursprünglichen. Zusätzliche Kombinationen zeigen, dass eine wichtige gemeinsame Zuordnung verloren ging.

Passend dazu