- 1 Section
- 10 Lessons
- unbegrenzt
- Relationale Datenbanken & ER-Modell10
- 1.1Was ist eine Datenbank? DBMS, Schema, Instanz
- 1.2ERM: Entitäten, Attribute, Beziehungen
- 1.3ER-Diagramm: Chen-Notation
- 1.4ER-Diagramm: Krähenfußnotation
- 1.5Kardinalitäten: 1:1, 1:N, M:N
- 1.6Vom ER-Modell zum Datenbankschema
- 1.7Normalisierung: 1. Normalform
- 1.8Normalisierung: 2. und 3. Normalform
- 1.9Denormalisierung
- 1.10Aufgaben ER-Modell & Normalisierung
ERM: Entitäten, Attribute, Beziehungen
Bevor man eine Datenbank baut, muss man die reale Welt verstehen, die sie abbilden soll. Welche Dinge gibt es? Welche Eigenschaften haben sie? Wie hängen sie zusammen? Das Entity-Relationship-Modell (ERM) ist genau das Werkzeug für diese Analyse – eine grafische Sprache zur Modellierung von Daten, lange bevor eine einzige CREATE-TABLE-Anweisung geschrieben wird. Es wurde 1976 von Peter Chen erfunden und ist bis heute die Lingua Franca der Datenbankmodellierung.
Das ERM kennt drei Grundbausteine: Entitäten (die „Dinge"), Attribute (ihre Eigenschaften) und Beziehungen (wie sie zueinander stehen). Daraus lassen sich beliebig komplexe Modelle bauen – vom einfachen Adressbuch bis zum SAP-System. In dieser Lektion lernst du die drei Bausteine kennen und siehst, wie man sie auf reale Geschäftsprobleme anwendet. Notation (Chen vs. Krähenfuß) und Kardinalitäten kommen in den nächsten Lektionen.
1) Die drei Grundbausteine
Ein ERM besteht aus exakt drei Elementen, die immer dieselben Symbole tragen (in der klassischen Chen-Notation). Diese Symbole solltest du auf einen Blick erkennen können – sie tauchen in jeder IHK-Prüfung auf:
| Symbol | Name | Bedeutung | Beispiel |
|---|---|---|---|
| Entität (Rechteck) |
Ein eindeutig identifizierbares Ding aus der realen Welt | Kunde, Buch, Bestellung, Mitarbeiter, Fahrzeug | |
| Attribut (Ellipse) |
Eine Eigenschaft einer Entität oder Beziehung | name, geburtsdatum, preis, isbn, farbe | |
| Beziehung (Raute) |
Verbindung zwischen zwei (oder mehr) Entitäten, oft als Verb | kauft, schreibt, gehört zu, leiht aus |
Eine wichtige Konvention: Entitäten werden meist als Substantive benannt (Kunde, Produkt), Beziehungen als Verben (kauft, gehört zu). Liest man ein ERM, sollte ein flüssiger Satz herauskommen: „Kunde kauft Produkt" oder „Autor schreibt Buch". Dieser Lesetest ist ein guter Selbstcheck beim Modellieren.
2) Bauteilkasten – probier es aus
Bevor wir komplexer werden: Klick die drei Symbole an, sie erscheinen rechts auf der Leinwand. Schiebe sie mit der Maus herum und baue dir ein Mini-ERM. Das soll dir das Symbol-Repertoire ins Gedächtnis brennen – mehr nicht. (Das echte ERM zeichnest du später in Tools wie draw.io, MySQL Workbench oder mit Stift und Papier.)
3) Was qualifiziert sich als Entität?
Nicht jedes Substantiv aus der Aufgabenstellung wird automatisch zur Entität. Eine gute Entität erfüllt drei Kriterien:
- Eindeutig identifizierbar: Jede einzelne Instanz lässt sich von allen anderen unterscheiden – meist über einen Schlüssel wie eine Personalnummer, ISBN oder ID.
- Interessant für die Anwendung: Die Entität hat Eigenschaften und Beziehungen, die wir speichern und auswerten wollen. Reine „Hilfs-Substantive" sind oft keine echten Entitäten.
- Existiert unabhängig: Sie kann auch ohne andere Entitäten gedacht werden. (Eine Ausnahme bilden schwache Entitäten, dazu gleich mehr.)
Wichtiger Begriff: Wenn man von „Entität" spricht, meint man oft eigentlich den Entitätstyp (die Klasse, z. B. „Kunde") – die einzelnen Datensätze wie „Kunde Nr. 4711 Müller GmbH" sind dann Entitäten dieses Typs. In der Praxis verwischt der Sprachgebrauch beide Begriffe. In Prüfungen sind sie aber oft getrennt zu unterscheiden – ähnlich wie Schema vs. Instanz.
4) Attribute – und ihre Sondertypen
Attribute sind die Eigenschaften, die wir pro Entität speichern wollen. Ein Kunde hat Name, Adresse, Telefonnummer. Soweit klar. Aber nicht alle Attribute sind gleich – Chen unterscheidet drei Sondertypen, die in der Prüfung gerne abgefragt werden:
Mehrwertiges Attribut
Eine Entität kann mehrere Werte für dasselbe Attribut haben. In der 1. Normalform sind diese verboten und werden in eigene Tabellen ausgelagert.
Person.telefon → [privat, mobil, büro]Abgeleitetes Attribut
Wird aus anderen Attributen berechnet und nicht gespeichert (gestrichelte Ellipse). Beispiel: Alter aus Geburtsdatum, Gesamtpreis aus Einzelpreis × Menge.
Person.alter ← aus geburtsdatumSchlüsselattribut
Identifiziert die Entität eindeutig (unterstrichener Attributname). Wird später zum Primary Key der Tabelle.
Person.personalnummerAdresse aus Straße, PLZ, Stadt). Beim Übergang in das Datenbankschema werden sie meist auseinandergezogen, weil SQL nur atomare Werte pro Spalte erlaubt.5) Beziehungen – wie Dinge zusammenhängen
Beziehungen sind das Bindeglied zwischen Entitäten. Ohne Beziehungen wäre eine Datenbank nur eine Sammlung unabhängiger Tabellen – mit Beziehungen wird sie zu einem vernetzten Modell der realen Welt. Beispiele:
- Ein Kunde tätigt eine Bestellung – Beziehung zwischen Kunde und Bestellung
- Ein Mitarbeiter arbeitet in einer Abteilung – Beziehung zwischen Mitarbeiter und Abteilung
- Ein Buch wird ausgeliehen von einem Leser – Beziehung zwischen Buch und Leser
Beziehungen können selbst Attribute haben. Beispiel: Bei „Mitarbeiter arbeitet in Projekt" kann man das Attribut stundenanzahl nicht klar dem Mitarbeiter oder dem Projekt zuordnen – es gehört zur Beziehung selbst. Solche Beziehungen werden später beim Schema-Übergang oft zu eigenen Verknüpfungstabellen.
Wichtig sind außerdem zwei Sonderfälle:
- Rekursive Beziehung: Eine Entität ist mit sich selbst in Beziehung. Klassisches Beispiel: Mitarbeiter ist Vorgesetzter von Mitarbeiter. Im ERM zeigt ein Pfeil von der Entität zurück auf sie selbst.
- Ternäre Beziehung: Drei (oder mehr) Entitäten sind über eine gemeinsame Beziehung verbunden – z. B. Arzt verschreibt Patient ein Medikament. In der Praxis löst man das oft mit binären Beziehungen, weil es einfacher zu implementieren ist.
6) Schwache Entitäten – wenn etwas nicht allein leben kann
Eine schwache Entität ist eine Entität, die ohne eine andere Entität gar nicht existieren könnte. Sie hat keinen eigenen Schlüssel, sondern wird über die Beziehung zur „starken" Entität identifiziert. Klassisches Beispiel: Rechnungsposition. Eine Rechnungsposition allein ergibt keinen Sinn – sie gehört immer zu einer konkreten Rechnung. Lösche die Rechnung, verschwinden alle Positionen mit.
In der Chen-Notation werden schwache Entitäten als doppelt umrandetes Rechteck dargestellt. Im fertigen Datenbankschema sieht man sie an einem zusammengesetzten Primärschlüssel (z. B. rechnung_id + positionsnummer) und einem ON DELETE CASCADE auf der starken Seite, siehe Referenzielle Integrität.
7) Beispiel Bibliothek – ein vollständiges Mini-ERM
Schauen wir uns ein durchgängiges Beispiel an. Eine Bibliothek möchte verwalten: Welche Bücher gibt es, wer hat sie geschrieben, welcher Leser leiht sie aus? Klick auf eine Entität, um zu sehen, welche Attribute und Beziehungen sie hat:
buch_isbn + inventarnr identifiziert. Das ist genau die Modellierungs-Feinheit, die in IHK-Aufgaben gerne abgefragt wird.8) Vom ERM zum Code – ein Vorausblick
Das ERM ist nur ein Zwischenschritt. Ziel ist eine fertige Datenbank mit Tabellen. Die Übersetzung folgt klaren Regeln, die wir in Vom ER-Modell zum Datenbankschema im Detail betrachten. Hier nur der Grundsatz:
- Jede Entität wird eine eigene Tabelle.
- Jedes Attribut wird eine Spalte.
- Schlüsselattribute werden zum Primary Key.
- Beziehungen werden je nach Kardinalität entweder als Fremdschlüssel-Spalte in eine der Tabellen aufgenommen (1:1, 1:N) oder als eigene Verknüpfungstabelle (M:N).
Aus dem Bibliotheks-ERM oben würden also vier Tabellen entstehen – plus eine Verknüpfungstabelle für die M:N-Beziehung zwischen Autor und Buch. Wer das Modell sauber gezeichnet hat, hat die Tabellen-Struktur damit praktisch schon geschrieben.
Zusammenfassung
Das Entity-Relationship-Modell (ERM) ist die Standard-Methode zur grafischen Modellierung von Daten – erfunden 1976 von Peter Chen. Es kennt drei Grundbausteine: Entitäten (Rechtecke, Substantive – die „Dinge" der realen Welt), Attribute (Ellipsen – die Eigenschaften) und Beziehungen (Rauten, Verben – wie die Dinge zueinander stehen). Attribute kennen Sondertypen: mehrwertig, abgeleitet, Schlüsselattribut, zusammengesetzt. Beziehungen können selbst Attribute haben, rekursiv (Entität mit sich selbst) oder ternär (drei Entitäten) sein. Schwache Entitäten haben keinen eigenen Schlüssel und brauchen eine starke Entität, um zu existieren – sie werden mit doppelter Umrandung gezeichnet. Das ERM ist Werkzeug zur Analyse vor der Implementierung – aus ihm leitet man später systematisch die Tabellen, Spalten und Fremdschlüssel ab. Die Notation, die wir hier benutzt haben, ist die Chen-Notation – die heute in Praxis-Tools dominante Variante ist die Krähenfußnotation.
Verwandte Lektionen: ER-Diagramm: Chen-Notation · Kardinalitäten · ER-Modell zu Schema · und mehrWeitere relevante LektionenWas ist eine Datenbank?Krähenfußnotation1. NormalformPrimary & Foreign KeyReferenzielle IntegritätCREATE TABLEUML-Klassendiagramm (Vergleich)
