Das Entity-Relationship-Modell
Das Entity-Relationship-Modell (ERM oder ER-Modell) ist das heute mit am weitesten verbreitete Datenmodell. Der Einsatz von ER-Modellen ist der De-facto-Standard für die Datenmodellierung, auch wenn es unterschiedliche grafische Darstellungsformen für Datenmodelle gibt.
In der Datenbank wird ein Ausschnitt der Realität abgebildet oder modelliert. Da die Realität eine überschaubare Anzahl von Möglichkeiten und Randbedingungen beinhaltet ist bei der Beschreibung dieses Ausschnitts eine Beschränkung auf die wichtigsten oder interessantesten Objekte der Realität und ihre Beziehungen untereinander sinnvoll. Wir erzeugen dadurch einen Ausschnitt der realen Welt, eine "Miniwelt".
Eine Datenbank verknüpft verschiedene Entitäten der Miniwelt auf logische Weise, stellt also die Beziehungen zwischen den Entitäten dar. Eine Entität ist dabei ein Objekt der Minwelt, das verschiedenen Eigenschaften haben kann - diese Eigenschaften nennt man Attribute der Entität.
Im folgenden Beispiel sind die Entitäten "Schüler" und "Lehrer", dargestellt im folgenden Entity-Relations-Diagram (ER-Diagramm). Unterschlagen werden dabei Aspekte der Realität wie "Schüler findet Lehrer doof", "Lehrer schreibt schwere Klasssenarbeiten" und der Umsatnd, dass in der realen Welt Eltern existieren. Je nach dem Zweck den,eine Datenbank erfüllen soll, werden anderen Aspekte der Realität in der Miniwelt abgebildet und in das Modell übernommen.
"Jeder Schüler hat genau einen Klassenlehrer" ist hier die Beziehung zwischen den Entitäten "Schüler" und "Lehrer". Da jeder Schüler nur genau einen Klassenlehrer hat, spricht man hier von einer N:1 Relation ("Viele zu Eins") zwischen den Entitäten "Schüler" und "Lehrer".
Insgesamt gibt es nur vier Beziehungen zwischen Entitäten, der Fachbegriff ist "Kardinalität"
- 1:1 - Beziehung
- 1:N - Beziehung
- N:1 - Beziehung (Umkehrung zu 1:N)
- N:M - Beziehung
Aufgaben
(A1)
Erweiterung der Schuldatenbank:
- Ergänze die Entitäten der beispielhaften Schulverwaltungsdatenbank durch weitere Attribute
- Ergänze die Schulverwaltungsdatenbank durch eine weitere Entität, die mit mindestens einer der beiden vorgegebenen in einer Beziehung steht.
- Zeichne ein ER-Diagramm für deine "neue" Schulverwaltungsdatenbank
(A2)
ER-Diagramme: Finde für folgende ER-Diagramme den Beziehungstyp heraus und notiere ihn auch am Diagramm. Falls nötig kannst du dir verbale Formulierungen überlegen:
Beispiel:
Lösung:
Ein Lehrer ist Klassenlehrer von vielen Schülern → 1:N
(anders als oben: jeder Schüler hat genau einen Klassenlehrer → N:1)
(A3)
Modelliere die folgenden Situationen in einem ER-Diagramm: Welche Beziehung besteht zwischen den Entitäten, welche Attribute haben die Entitäten?
- Schüler (Vorname, Name) erhalten Zeugnisse. Die Zeugnisse enthalten eine Bemerkung über Mitarbeit und Verhalten und die Fachnoten.
- Zu einer gespeicherten Sammlung von Digitalfotos, deren Datum und Auflösung bekannt ist, soll ein Stichwortverzeichnis angelegt werden.
- CDs (Titel, ISBN-Nummer) sind von bestimmten Interpreten (Name) und enthalten Songs (Titel). (3 Entitäten!)
(A4)
Erweitere die Entitäten im Webshop in PHPmyAdmin um weitere Attribute indem du Felder in vorhandene Tabellen hinzufügst. Füge neue Entitäten hinzu, indem du neue Tabellen anlegst. Informiere dich in einer Internetrecherche über die möglichen Feldtypen in mysql, überlege, welche Typen für deine Ideen jeweils geeignet sind.
Material
Filename | Filesize | Last modified |
---|---|---|
03-er-modellierung.odp | 1.2 MiB | 24.11.2020 06:52 |
03-er-modellierung.pdf | 514.7 KiB | 19.11.2020 13:31 |