ERM Modellierung
ERM-Modellierung für relationale Datenbanken
Die Entity-Relationship-Modellierung (ERM) dient der strukturierten Planung von Datenbankstrukturen. Sie beschreibt, welche Objekte (Entitäten) existieren, welche Eigenschaften (Attribute) sie haben und wie sie zueinander in Beziehung stehen.
1. Entitäten (Entities)
Eine Entität ist ein Objekt der realen Welt, das in der Datenbank gespeichert wird.
Beispiele:
- Kunde
- Produkt
- Bestellung
Im ER-Diagramm als Rechteck dargestellt.
2. Attribute
Attribute beschreiben die Eigenschaften einer Entität.
Beispiel für Entität „Kunde“:
- kundennummer
- name
Primärschlüssel (Primary Key) identifizieren Entitäten eindeutig und werden oft unterstrichen. Fremdschlüssel (Foreign Key) stellen Verbindungen zu anderen Entitäten her.
3. Beziehungen (Relationships)
Beschreiben die Verbindung zwischen zwei oder mehr Entitäten.
Beispiel:
- Ein Kunde gibt eine Bestellung auf
- Eine Bestellung enthält mehrere Produkte
Im Diagramm als Raute zwischen den Entitäten dargestellt.
4. Kardinalitäten
Geben an, wie viele Entitäten an einer Beziehung beteiligt sein können.
Beispiele:
- 1:1 – Ein Personalausweis gehört zu genau einem Bürger
- 1:n – Ein Kunde kann mehrere Bestellungen aufgeben
- n:m – Ein Produkt kann in mehreren Bestellungen enthalten sein und umgekehrt
5. Von ER-Modell zum relationalen Modell
Bei der Überführung ins relationale Modell:
- Jede Entität → eigene Tabelle
- Jedes Attribut → Spalte in der Tabelle
- Beziehungen → über Fremdschlüssel realisiert
- n:m-Beziehungen → eigene Zwischentabelle notwendig
Beispiel: Kunde – Bestellung
ER-Modell:
- Entitäten: Kunde, Bestellung
- Beziehung: gibt auf
ERM-Modell: Kunde – Bestellung
Entitäten
Kunde
- kundennr (Primärschlüssel)
- name
- telefon
Bestellung
- bestellnr (Primärschlüssel)
- datum
- gesamtbetrag
- kundennr (Fremdschlüssel → Kunde)
Beziehung
gibt auf
Beziehung zwischen: Kunde – Bestellung
Kardinalität: 1:n (Ein Kunde kann viele Bestellungen aufgeben, aber eine Bestellung gehört zu genau einem Kunden)
Textuelle Darstellung des ER-Modells
Kunde (kundennr, name, email, telefon)
Bestellung (bestellnr, datum, gesamtbetrag, kundennr)
Beziehung: Kunde ⟶ Bestellung (1:n)