Entity Relationship (ER)-Diagrammmodell mit DBMS-Beispiel
⚡ Intelligente Zusammenfassung
Das Entity-Relationship-Diagrammmodell (ER-Diagramm) mit DBMS-Beispiel Dieses Modell veranschaulicht eine strukturierte Methode zur visuellen Darstellung von Daten und deren Verbindungen in relationalen Datenbanken. Es wurde von Peter Chen entwickelt und bietet eine konzeptionelle Modellierungsgrundlage zur präzisen Definition von Entitäten, Attributen, Beziehungen und deren Kardinalitäten.

Was ist ein ER-Diagramm?
Das Entity-Relationship-Diagramm (ER-Diagramm) ist ein leistungsstarkes visuelles Werkzeug zum Entwurf relationaler Datenbankstrukturen. Es wurde 1976 von Peter Chen erstmals vorgestellt und bietet eine konzeptionelle Modellierungsgrundlage, die Entitäten, Attribute, Beziehungen und deren Kardinalitäten präzise definiert. Dieses Tutorial deckt alle Aspekte ab, von den Grundlagen bis hin zu fortgeschrittenen Techniken, und hilft Ihnen, den Entwurf von Datenbankschemata zu beherrschen.
ER-Diagramme enthalten verschiedene Symbole, die Rechtecke zur Darstellung von Entitäten, Ovale zur Definition von Attributen und Rauten zur Darstellung von Beziehungen verwenden.
Auf den ersten Blick ähnelt ein ER-Diagramm einem Flussdiagramm. Es enthält jedoch viele spezielle Symbole, deren Bedeutung dieses Modell einzigartig macht. Der Zweck eines ER-Diagramms besteht darin, die Infrastruktur des Entity Frameworks darzustellen.

Geschichte der ER-Modelle
Peter Chen schlug das ER-Diagramm 1976 in seiner wegweisenden Arbeit „The Entity-Relationship Model: Toward a Unified View of Data“ vor. Sein Ziel war es, eine einheitliche Konvention zu schaffen, die sowohl für relationale Datenbanken als auch für Netzwerke anwendbar sein sollte. Chen konzipierte das ER-Modell als einen konzeptionellen Modellierungsansatz, der die Kluft zwischen realen Anforderungen und der technischen Implementierung von Datenbanken überbrücken sollte.
Seitdem hat sich das ER-Modell mit verschiedenen Notationssystemen weiterentwickelt, darunter die Chen-Notation (die ursprüngliche), die Crow's-Foot-Notation (die in modernen Werkzeugen weit verbreitet ist) und UML-basierte Ansätze. Trotz dieser Unterschiede bleiben die Kernkonzepte in allen Implementierungen konsistent.
Warum ER-Diagramme verwenden?
ER-Diagramme bieten zahlreiche Vorteile für Datenbankdesign und -entwicklung:
- Visuelle Kommunikation: Sie bieten eine klare visuelle Darstellung, die sowohl technische als auch nicht-technische Interessengruppen verstehen können.
- Blaupause für die Entwicklung: Sie zeigen genau, wie die Tabellen miteinander verbunden werden sollen und welche Felder jede Tabelle enthalten wird.
- Übersetzungsbereit: ER-Diagramme lassen sich direkt in relationale Tabellen übersetzen, wodurch Sie schnell Datenbanken erstellen können.
- Fehler vermeiden: Sie helfen dabei, Konstruktionsfehler und Redundanzen vor der Implementierung zu erkennen und so Zeit und Ressourcen zu sparen.
- Dokumentation: Sie dienen als dauerhafte Dokumentation, die neuen Teammitgliedern hilft, die Systemarchitektur zu verstehen.
- Systemanalyse: Sie helfen dabei, alle in einem System vorhandenen Entitäten und die Beziehungen zwischen ihnen zu identifizieren.
ER-Diagramm-Komponenten
Jedes ER-Diagramm besteht aus drei Kernkomponenten: Entitäten, Attributen und Beziehungen. Das Verständnis jeder Komponente und ihrer Wechselwirkungen ist für die Erstellung effektiver Datenbankdesigns unerlässlich.
Beispiele für ER-Diagramme
In einer Universitätsdatenbank könnten wir beispielsweise Entitäten für Studierende, Kurse und Dozenten haben. Eine Studierenden-Entität kann Attribute wie Matrikelnummer, Name und Fachbereichs-ID besitzen. Sie kann Beziehungen zu Kursen und Dozenten haben.
Entities
Eine Entität repräsentiert jedes reale Objekt – ob lebendig oder nicht –, das eindeutig identifiziert werden kann und über das Daten gespeichert werden können. Es kann sich um einen physischen Gegenstand, eine Tatsache über das Unternehmen oder ein Ereignis in der realen Welt handeln. Entitäten können Personen, Orte, Objekte, Ereignisse oder Konzepte umfassen.
Beispiele für Entitäten nach Kategorie:
- Person: Mitarbeiter, Student, Patient, Kunde
- Ort: Geschäft, Gebäude, Büro, Lagerhalle
- Objekt: Maschine, Produkt, Auto, Buch
- Event: Verkauf, Registrierung, Verlängerung, Transaktion
- Konzept: Konto, Kurs, Abteilung, Projekt
Entitätssatz
Eine Entitätsmenge ist eine Gruppe ähnlicher Entitäten mit gemeinsamen Attributen. Beispielsweise bilden alle Studierenden einer Universität die Entitätsmenge „Studierende“. In ER-Diagrammen werden Entitäten durch Rechtecke dargestellt, in die der Name der Entität geschrieben wird.
Entitäten werden durch ihre Eigenschaften, auch Attribute genannt, repräsentiert. Jedes Attribut hat einen eigenen Wert. Beispielsweise kann eine Studentenentität die Attribute Name, Alter und Klasse besitzen.
Starke Entitäten vs. schwache Entitäten
Entitäten werden anhand ihrer Fähigkeit, unabhängig zu existieren, in starke und schwache Entitäten eingeteilt. Das Verständnis dieser Unterscheidung ist für ein korrektes Datenbankdesign unerlässlich.
Eine starke Entität besitzt einen eigenen Primärschlüssel und kann unabhängig existieren. Beispielsweise kann eine „Student“-Entität eindeutig durch die Student_ID identifiziert werden, ohne von einer anderen Entität abhängig zu sein.
Eine schwache Entität besitzt keinen eigenen Primärschlüssel und ist zur Identifizierung auf eine starke Entität (die sogenannte Eigentümerentität) angewiesen. Sie verwendet einen Teilschlüssel (Diskriminator) in Kombination mit dem Primärschlüssel der Eigentümerentität, um Eindeutigkeit zu gewährleisten. Beispielsweise ist in einem Bankensystem die Entität „Transaktion“ von der Entität „Konto“ abhängig: Die Transaktionsnummer allein ist nicht in der gesamten Datenbank eindeutig, aber in Kombination mit der Kontonummer wird sie eindeutig.
| Starke Entität | Schwache Entität |
|---|---|
| Besitzt einen eigenen Primärschlüssel | Besitzt keinen Primärschlüssel; verwendet einen Teilschlüssel. |
| Dargestellt durch ein einzelnes Rechteck | Dargestellt durch ein Doppelrechteck |
| Der Primärschlüssel ist durch eine durchgezogene Linie unterstrichen. | Teilweise Legende mit gestrichelter Linie unterstrichen. |
| Kann unabhängig existieren | Die Existenz hängt von der Eigentümerorganisation ab. |
| Verbunden mit einer einzelnen Diamantenbeziehung | Verbunden mit Doppeldiamant (identifizierende Beziehung) |
| Beispiel: Student, Mitarbeiter, Produkt | Beispiel: Transaktion, Abhängigkeit, Bestellposition |
Beziehung
Eine Beziehung stellt eine Verbindung zwischen zwei oder mehr Entitäten dar. Beziehungen werden typischerweise mithilfe von Verben oder Verbphrasen beschrieben, die die Interaktion der Entitäten untereinander erläutern. In ER-Diagrammen werden Beziehungen durch Rauten dargestellt. Beispiel: Tom arbeitet in der Chemieabteilung.
Entitäten nehmen an Beziehungen teil. Wir können häufig Beziehungen zu Verben oder Verbalphrasen erkennen.
Beispiele:
- Sie besuchen diese Vorlesung
- Ich halte den Vortrag
- Ein Student besucht eine Vorlesung
- Ein Dozent hält eine Vorlesung
Attribute
Ein Attribut ist eine Eigenschaft oder ein Merkmal, das eine Entität oder Beziehung beschreibt. Attribute liefern detaillierte Informationen, die jede Entitätsinstanz einzigartig und aussagekräftig machen. In ER-Diagrammen werden Attribute durch Ovale (Ellipsen) dargestellt, die durch eine Linie mit ihrer übergeordneten Entität verbunden sind.
Eine Student-Entität könnte beispielsweise Attribute wie Student_ID, Name, Date_of_Birth, Email und Phone_Number haben.
Arten von Attributen
| Attributtyp | Beschreibung | Beispiel |
|---|---|---|
| Einfach (AtomNS) | Kann nicht weiter in kleinere Komponenten zerlegt werden | Telefonnummer, Sozialversicherungsnummer, E-Mail-Adresse |
| Zusammengesetzt | Lässt sich in kleinere Unterattribute untergliedern | Vollständiger Name (Vorname, zweiter Vorname, Nachname), Adresse (Straße, Ort, Postleitzahl) |
| Abgeleitet | Der Wert wird aus anderen Attributen berechnet; er wird nicht direkt gespeichert. | Alter (abgeleitet vom Geburtsdatum), Gesamtpreis |
| Mehrwertig | Kann mehrere Werte für eine einzelne Entität speichern | Telefon NumbersE-Mail-Adressen, Fähigkeiten |
| Schlüsselattribut | Identifiziert jede Entitätsinstanz eindeutig (Primärschlüssel) | Studenten-ID, Mitarbeiter-ID, ISBN |
Schlüsseltipp: In ER-Diagrammen werden Schlüsselattribute durch Unterstreichung ihrer Namen dargestellt. Abgeleitete Attribute werden in gestrichelten Ovalen und mehrwertige Attribute in Doppelovalen dargestellt.
Kardinalität (Beziehungstypen)
Die Kardinalität definiert die numerischen Beschränkungen einer Beziehung – genauer gesagt, wie viele Instanzen einer Entität mit Instanzen einer anderen Entität verknüpft werden können. Das Verständnis der Kardinalität ist für die Entwicklung effizienter Datenbankstrukturen unerlässlich.
1. Eins-zu-Eins (1:1)
Eine Entität aus Menge A kann höchstens mit einer Entität aus Menge B verknüpft sein und umgekehrt.
Beispiel: Jedem Studenten wird genau eine Studentenkennung zugeordnet, und jede Studentenkennung gehört genau einem Studenten.
2. Eins-zu-Viele (1:N)
Eine Entität aus Menge A kann mit mehreren Entitäten aus Menge B verknüpft sein, aber jede Entität in B ist nur mit einer Entität in A verknüpft.
Beispiel: Eine Klasse besteht aus mehreren Schülern.
3. Viele-zu-Eins (N:1)
Mehrere Entitäten aus Menge A können einer Entität aus Menge B zugeordnet werden.
Beispielsweise gehören viele Schüler derselben Klasse an.
4. Viele-zu-Viele (M:N)
Mehrere Entitäten aus Menge A können mit mehreren Entitäten aus Menge B verknüpft werden und umgekehrt.
Beispielsweise sind Studierende als Gruppe mehreren Fakultätsmitgliedern zugeordnet, und Fakultätsmitglieder können mehreren Studierenden zugeordnet sein.
ER-Diagrammsymbole und -notationen
ER-Diagramme verwenden standardisierte Symbole zur Darstellung verschiedener Komponenten. Obwohl es mehrere Notationssysteme gibt, sind die beiden am weitesten verbreiteten die Chen-Notation und die Crow's-Foot-Notation.
Chen-Notation
Die Chen-Notation, die 1976 von Peter Chen entwickelt wurde, verwendet geometrische Formen zur Darstellung verschiedener Elemente:
| Symbol | Name | repräsentiert |
|---|---|---|
| Rechteck | Wesen | Starke Entität (z. B. Student, Produkt) |
| Double Rechteck | Schwache Entität | Von einer anderen Entität abhängig (z. B. Transaktion) |
| Ellipse/Oval | Attribut | Eigenschaften einer Entität (z. B. Name, ID) |
| Double Ellipse | Mehrwertiges Attribut | Attribut mit mehreren Werten (z. B. Telefonnummer) Numbers) |
| Gestrichelte Ellipse | Abgeleitetes Attribut | Berechneter Wert (z. B. Alter aus dem Geburtsdatum) |
| Diamond | Beziehung | Verknüpfung zwischen Entitäten (z. B. Einschreibungen) |
| Double Diamond | Beziehung identifizieren | Beziehung zu einer schwachen Entität |
| Line | Link | Verbindet Komponenten miteinander |
| Unterstrichener Text | Primärschlüssel | Eindeutiger Bezeichner für die Entität |
Krähenfußnotation
Die Crow's Foot Notation (auch IE-Notation genannt) wird häufiger in modernen Datenbankdesign-Tools verwendet. Sie nutzt unterschiedliche Zeilenumbrüche zur Darstellung der Kardinalität und eignet sich besonders gut zur Veranschaulichung der „Viele“-Seite von Beziehungen.
| Symbol DescriptIon | Bedeutung |
|---|---|
| Einzelner vertikaler Strich (|) | Erforderlich: Genau eine (genau eine) |
| Kreis mit Linie (O|) | Optional Eins (null oder eins) |
| Krähenfuß mit Linie (>|) | Erforderlich Viele (eins oder mehrere) |
| Krähenfuß mit Kreis (>O) | Optional Viele (null oder mehr) |
Chen-Notation vs. Crow's Foot: Wann verwendet man welche Notation?
| Aspekt | Chen-Notation | Krähenfußnotation |
|---|---|---|
| besten Für | Konzeptuelle Modellierung, akademische Nutzung | Physikalisch-logische Modellierung, industrielle Anwendung |
| Attributanzeige | Zeigt alle Attribute visuell an | Listenattribute innerhalb des Entitätsfelds auf |
| Kardinalität | Verwendet Zahlen (1, N, M) | Verwendet visuelle Symbole |
| Komplexität | Kann unübersichtlich werden | Kompakter und sauberer |
| Werkzeugunterstützung | Begrenzte Unterstützung moderner Werkzeuge | Weitgehend unterstützt von Werkzeugen |
So erstellen Sie ein Entity-Relationship-Diagramm (ERD)
In diesem Tutorial zu ER-Diagrammen (ERD) lernen wir, wie man ein ER-Diagramm erstellt. Die folgenden Schritte sind dafür notwendig:
Lassen Sie uns sie anhand eines Beispiels für ein Entity-Relationship-Diagramm untersuchen:
An einer Universität belegt ein Student Kurse. Jeder Student muss mindestens einem Kurs zugeordnet sein. Jeder Kurs wird von einem einzigen Professor unterrichtet. Um die Qualität der Lehre zu gewährleisten, darf ein Professor nur einen Kurs anbieten.
Schritt 1) Identifizierung der Entität
Wir haben drei Entitäten:
- Studenten-
- Kurse
- Professor
Schritt 2) Beziehungsidentifizierung
Wir haben folgende zwei Beziehungen:
- Der Schüler ist zugewiesen ein Kurs
- Der Professor liefert ein Kurs
Schritt 3) Kardinalitätsidentifizierung
Aus der Aufgabenstellung geht hervor, dass:
- Es kann ein Student zugeteilt werden mehrere Kurse!
- Ein Professor kann nur liefern dank One Kurs
Schritt 4) Identifizieren Sie Attribute
Sie müssen die aktuell von der Organisation geführten Dateien, Formulare, Berichte und Daten analysieren, um Attribute zu identifizieren. Zusätzlich können Sie Interviews mit verschiedenen Stakeholdern führen, um Entitäten zu ermitteln. Zunächst ist es wichtig, die Attribute zu identifizieren, ohne sie einer bestimmten Entität zuzuordnen.
Sobald Sie eine Liste der Attribute haben, müssen Sie diese den identifizierten Entitäten zuordnen. Stellen Sie sicher, dass jedes Attribut genau einer Entität zugeordnet ist. Falls Sie der Meinung sind, dass ein Attribut zu mehreren Entitäten gehören sollte, verwenden Sie einen Modifikator, um es eindeutig zu kennzeichnen.
Sobald die Zuordnung abgeschlossen ist, identifizieren Sie die Primärschlüssel. Wenn kein eindeutiger Schlüssel verfügbar ist, erstellen Sie einen.
| Wesen | Primärschlüssel | Attribut |
|---|---|---|
| Studenten- | Studenten ID | Name des Studenten |
| Professor | Mitarbeiter-ID | ProfessorName |
| Kurse | Kurs-ID | Kursname |
Für die Kursentität könnten Attribute wie Dauer, Credits, Aufgaben usw. vorliegen. Der Einfachheit halber haben wir nur ein Attribut berücksichtigt.
Schritt 5) ER-Diagramm erstellen
Eine modernere Darstellung eines Entity-Relationship-Diagramms (Beispiel):
Best Practices für effektive ER-Diagramme
Befolgen Sie diese Richtlinien, um klare, wartungsfreundliche und effektive ER-Diagramme zu erstellen:
- Redundanz beseitigen: Doppelte Entitäten, Attribute oder Beziehungen entfernen.
- Verwenden Sie klare Namenskonventionen: Verwenden Sie einheitliche, beschreibende Namen. Vermeiden Sie Abkürzungen.
- Überprüfung anhand der Anforderungen: Stellen Sie sicher, dass das Diagramm alle Datenspeicheranforderungen erfüllt.
- Halte es einfach: Erstellen Sie lieber mehrere Diagramme auf verschiedenen Ebenen als ein einziges, unübersichtliches Diagramm.
- Verwenden Sie Farbe sparsam: Verwenden Sie Farben einheitlich, um Kategorien hervorzuheben.
- Annahmen zum Dokument: Fügen Sie Anmerkungen hinzu, in denen die Annahmen zu den Geschäftsregeln erläutert werden.
- RevAnsicht mit Interessengruppen: Lassen Sie das Diagramm von den Fachanwendern und dem technischen Team überprüfen.
- Versionskontrolle: Pflegen Sie die verschiedenen Versionen, während sich das Design weiterentwickelt.
ER-Diagramme vs. UML-Klassendiagramme
Obwohl sowohl ER-Diagramme als auch UML-Klassendiagramme zur Datenmodellierung verwendet werden, dienen sie unterschiedlichen Zwecken und Kontexten. Für ein effektives Systemdesign ist es wichtig zu verstehen, wann welches Diagramm eingesetzt wird.
| Aspekt | ER-Diagramm | UML-Klassendiagramm |
|---|---|---|
| Hauptzweck | Datenbank Design | Software-/Objektdesign |
| Optik | Daten und Beziehungen | Objekte, Methoden und Verhaltensweisen |
| Methoden/Operations | Nicht unterstützt | Voll unterstützt |
| Erbe | Beschränkt (nur im EER-Bereich) | Volle Unterstützung |
| Industrielle Verwendung | Datenbankadministratoren, Datenanalysten | Softwareentwickler, Architekten |















