1. Einführung in das Entity-Relationship-Modell (CHEN-Notation)
Definition: Das Entity-Relationship-Modell (ERM) ist ein Werkzeug zur Modellierung von Datenbanken. Es visualisiert die Struktur einer Datenbank durch die Darstellung von Entitäten, ihren Attributen und den Beziehungen zwischen den Entitäten.
Das ERM wurde 1976 von Peter Chen entwickelt und ist heute eines der wichtigsten Modellierungswerkzeuge im Datenbankdesign. Es hilft dabei:
Die Anforderungen an eine Datenbank zu verstehen
Die Struktur der Daten zu planen
Redundanzen zu vermeiden
Die Kommunikation zwischen Entwicklern und Anwendern zu erleichtern
Hauptbestandteile des ERM
Ein ER-Modell besteht aus drei Grundelementen:
Entitäten: Objekte oder Dinge der realen Welt
Attribute: Eigenschaften von Entitäten
Beziehungen: Verbindungen zwischen Entitäten
2. Entität
Definition: Eine Entität ist ein eindeutig identifizierbares Objekt der realen oder gedachten Welt, über das Informationen gespeichert werden sollen. Entitäten werden in ER-Diagrammen als Rechtecke dargestellt.
Beispiele für Entitäten:
Schüler (in einem Schulverwaltungssystem)
Buch (in einem Bibliothekssystem)
Kunde (in einem Bestellsystem)
Artikel (in einem Warenwirtschaftssystem)
Konkrete Ausprägungen: Datensätze
Eine Entität beschreibt eine allgemeine Kategorie (z.B. "Schüler"). Die konkreten Ausprägungen dieser Entität nennt man Datensätze.
Beispiel:
Entität: Schüler
Datensätze:
Max Mustermann, geboren am 15.03.2008, Klasse 10a
Anna Schmidt, geboren am 22.07.2007, Klasse 11b
Tom Müller, geboren am 10.11.2008, Klasse 10a
Darstellung in der Chen-Notation
In der Chen-Notation werden Entitäten als Rechtecke dargestellt:
3. Attribute
Definition:Attribute sind Eigenschaften, die eine Entität näher beschreiben. Sie werden in ER-Diagrammen als Ovale dargestellt, die mit der Entität verbunden sind.
Beispiel - Entität "Schüler":
Schüler-ID (Primärschlüssel)
Vorname
Nachname
Geburtsdatum
Klasse
E-Mail-Adresse
Arten von Attributen
Attributart
Beschreibung
Beispiel
Einfaches Attribut
Kann nicht weiter unterteilt werden
Vorname, Alter
Zusammengesetztes Attribut
Besteht aus mehreren Teilattributen
Adresse (Straße, PLZ, Ort)
Einwertiges Attribut
Hat genau einen Wert pro Datensatz
Geburtsdatum
Mehrwertiges Attribut
Kann mehrere Werte haben
Telefonnummern, Hobbys
Abgeleitetes Attribut
Wird aus anderen Attributen berechnet
Alter (aus Geburtsdatum)
Primärschlüssel
Definition: Ein Primärschlüssel ist ein Attribut oder eine Kombination von Attributen, das/die jeden Datensatz eindeutig identifiziert. In ER-Diagrammen wird der Primärschlüssel unterstrichen.
Beispiel: Bei der Entität "Schüler" könnte die Schüler-ID als Primärschlüssel dienen, da jeder Schüler eine eindeutige ID hat.
Darstellung in der Chen-Notation
4. Beziehungen
Definition: Eine Beziehung (auch Relation genannt) beschreibt eine Verbindung zwischen zwei oder mehreren Entitäten. Beziehungen werden in ER-Diagrammen als Rauten dargestellt.
Beispiele für Beziehungen:
Schüler besucht Kurs
Kunde bestellt Artikel
Autor schreibt Buch
Mitarbeiter arbeitet in Abteilung
Darstellung in der Chen-Notation
5. Kardinalität
Definition: Die Kardinalität gibt an, wie viele Datensätze einer Entität mit wie vielen Datensätzen einer anderen Entität in Beziehung stehen können. Sie beschreibt die Anzahl der möglichen Zuordnungen.
Arten von Kardinalitäten
Kardinalität
Bedeutung
Beispiel
1:1 (eins zu eins)
Ein Datensatz der ersten Entität ist genau einem Datensatz der zweiten Entität zugeordnet und umgekehrt
Ein Mitarbeiter hat genau einen Firmenwagen, ein Firmenwagen gehört genau einem Mitarbeiter
1:N (eins zu viele)
Ein Datensatz der ersten Entität kann mehreren Datensätzen der zweiten Entität zugeordnet sein, aber ein Datensatz der zweiten Entität ist nur einem Datensatz der ersten Entität zugeordnet
Ein Lehrer unterrichtet mehrere Schüler, aber jeder Schüler hat (in diesem Fach) nur einen Lehrer
N:1 (viele zu eins)
Mehrere Datensätze der ersten Entität sind einem Datensatz der zweiten Entität zugeordnet
Mehrere Mitarbeiter arbeiten in einer Abteilung, aber jeder Mitarbeiter gehört nur zu einer Abteilung
N:M (viele zu viele)
Mehrere Datensätze der ersten Entität können mehreren Datensätzen der zweiten Entität zugeordnet sein und umgekehrt
Ein Schüler besucht mehrere Kurse, ein Kurs wird von mehreren Schülern besucht
Hinweis zur Notation: In der Datenbankmodellierung wird die Schreibweise N:M verwendet (nicht N:N), da die beiden Seiten der Beziehung unterschiedliche Entitäten betreffen. Das N steht für "viele" auf der einen Seite, das M für "viele" auf der anderen Seite. Dies verdeutlicht, dass es sich um potenziell unterschiedliche Anzahlen handelt, da die beiden Seiten einer Beziehung oft unterschiedliche Kardinalitäten aufweisen (z. B. ein Student belegt mehrere Kurse, ein Kurs hat viele Studenten – aber nicht zwingend gleich viele).
Beispiele mit Visualisierung
1:N-Beziehung: Abteilung - Mitarbeiter
N:M-Beziehung: Schüler - Kurs
Min-Max-Notation (alternative Darstellung)
Neben der einfachen Kardinalität gibt es auch die Min-Max-Notation, die genauere Angaben ermöglicht:
Gegeben ist folgende Beschreibung eines Online-Shops:
"Kunden können Artikel bestellen. Jeder Kunde hat eine Kundennummer, einen Namen und eine Adresse. Artikel haben eine Artikelnummer, eine Bezeichnung und einen Preis. Bestellungen werden mit einer Bestellnummer erfasst und enthalten das Bestelldatum."
Aufgaben:
Identifizieren Sie alle Entitäten in dieser Beschreibung
Listen Sie für jede Entität die Attribute auf
Markieren Sie die Primärschlüssel
Lösungshinweise:
Schritt 1: Entitäten finden
Suchen Sie nach Hauptwörtern (Nomen) im Text
Fragen Sie sich: "Worüber sollen Informationen gespeichert werden?"
Tipp: Es gibt 3 Entitäten in dieser Beschreibung
Teilantwort: Eine der Entitäten ist Kunde.
Welche zwei weiteren Entitäten können Sie identifizieren?
Schritt 2: Attribute zuordnen
Welche Eigenschaften werden für jede Entität genannt?
Beispiel: Für "Kunde" werden genannt: Kundennummer, Name, Adresse
Schritt 3: Primärschlüssel
Welches Attribut identifiziert jeden Datensatz eindeutig?
Tipp: Oft sind es Nummern oder IDs (z.B. Kundennummer)
Aufgabe 2: Kardinalitäten bestimmen
Bestimmen Sie die Kardinalität für folgende Beziehungen:
Autor - Buch (Ein Autor kann mehrere Bücher schreiben, ein Buch kann von mehreren Autoren geschrieben werden)
Land - Hauptstadt (Jedes Land hat genau eine Hauptstadt, jede Hauptstadt gehört zu genau einem Land)
Kunde - Bestellung (Ein Kunde kann mehrere Bestellungen aufgeben, jede Bestellung gehört zu genau einem Kunden)
Student - Universität (Ein Student ist an genau einer Universität eingeschrieben, eine Universität hat viele Studenten)
Lösungshinweise:
Vorgehensweise:
Lesen Sie die Beschreibung in beide Richtungen
Fragen Sie: "Wie viele von A gehören zu B?" und umgekehrt
Erinnerung an die Kardinalitäten:
1:1 = genau einer zu genau einem
1:N = einer zu vielen
N:1 = viele zu einem
N:M = viele zu vielen
Beispiel für Aufgabe 1 (Autor - Buch):
➡️ Ein Autor → mehrere Bücher (N)
⬅️ Ein Buch ← mehrere Autoren (M)
→ Kardinalität: N:M
Versuchen Sie nun die anderen selbst!
Tipp für Aufgabe 2: Denken Sie an Deutschland und Berlin...
Aufgabe 3: ER-Diagramm erstellen
Erstellen Sie ein vollständiges ER-Diagramm für folgendes Szenario:
"Eine Bibliothek verwaltet Bücher und Ausleihen. Jedes Buch hat eine ISBN, einen Titel, einen Autor und ein Erscheinungsjahr. Mitglieder der Bibliothek haben eine Mitgliedsnummer, einen Namen und eine Adresse. Ein Mitglied kann mehrere Bücher ausleihen, aber jedes Buch kann zu einem Zeitpunkt nur von einem Mitglied ausgeliehen sein. Für jede Ausleihe wird das Ausleihdatum und das Rückgabedatum gespeichert."
Hinweise:
Identifizieren Sie alle Entitäten
Bestimmen Sie die Attribute und Primärschlüssel
Zeichnen Sie die Beziehungen mit korrekten Kardinalitäten
Verwenden Sie die Chen-Notation
Lösungshinweise:
Schritt 1: Entitäten identifizieren
Es gibt 3 Entitäten:
Buch
Mitglied
? (Überlegen Sie: Was hat eigene Attribute wie Ausleihdatum und Rückgabedatum?)
Schritt 2: Attribute zuordnen
Entität
Attribute (unvollständig)
Primärschlüssel
Buch
ISBN, Titel, ...
?
Mitglied
Mitgliedsnummer, ...
?
???
Ausleihdatum, Rückgabedatum
?
Schritt 3: Beziehungen und Kardinalitäten
Mitglied ↔ ??? : Ein Mitglied kann mehrere Ausleihen tätigen → 1:N
Buch ↔ ??? : Ein Buch kann mehrfach ausgeliehen werden (zu verschiedenen Zeiten) → 1:N
Wichtig: Wenn eine Beziehung eigene Attribute hat (hier: Ausleihdatum, Rückgabedatum), wird sie oft zu einer eigenen Entität!
Aufgabe 4: Fehleranalyse
Folgendes ER-Diagramm enthält mehrere Fehler. Identifizieren Sie die Fehler und korrigieren Sie diese:
Fehler:
Ist die Kardinalität 1:1 realistisch?
Welche Attribute fehlen?
Sollten Primärschlüssel definiert werden?
Lösungshinweise:
Fehler 1: Kardinalität
❌ Die Kardinalität 1:1 bedeutet:
Ein Student studiert genau 1 Fach
Ein Fach wird von genau 1 Student studiert
💡 Ist das realistisch? Studieren Studenten nicht normalerweise mehrere Fächer?
→ Die korrekte Kardinalität sollte N:M sein!
Fehler 2: Fehlende Attribute
Welche Attribute könnte "Student" haben?
Tipp: Matrikelnummer, Name, E-Mail, ...
Welche Attribute könnte "Fach" haben?
Tipp: Fach-ID, Fachbezeichnung, Semester, ...
Fehler 3: Primärschlüssel
Es sind keine Primärschlüssel definiert! Welche Attribute eignen sich?
Aufgabe 5: Erweiterte Modellierung
Szenario A - Bibliothekssystem (erweitert):
Erweitern Sie das Bibliotheks-Modell aus Aufgabe 3 um folgende Anforderungen:
Bücher können mehrere Autoren haben
Autoren können mehrere Bücher geschrieben haben
Verlage veröffentlichen Bücher
Ein Buch wird von genau einem Verlag veröffentlicht
Ein Verlag veröffentlicht viele Bücher
Lösungshinweise Szenario A:
Neue Entitäten:
Autor (mit Attributen: Autor-ID, Vorname, Nachname, ...)