Entity-Relationship-Modell (ER-Modell)

Begriffe

Bevor wir zu Beispielen für ER-Diagramme kommen, sollen die wichtigsten Begriffe geklärt werden:

Entität (Entity) - eindeutig identifizierbares Datenobjekt Entitätsmenge ( Entityklasse) – Zusammenfassung von Entitäten mit gemeinsamen Eigenschaften Attribut – Eigenschaft der Entitätsmenge Atributwert - konkreter Wert eines Attributs Primärschlüssel – minimale Menge von Attributen zur eindeutigen Identifikation der Entität Relationship – Beziehung zwischen Entitätsmengen

Einige Begriffe im ER-Modell entsprechen Begriffen im objektorientierten Modell. So entspricht eine Entität einem Objekt und eine Entitätsmenge einer Klasse. Die Begriffe Attribut und Attributwert kommen in beiden Modellen vor.

Symbole in ER-Diagrammen

Die folgenden Symbole werden in ER-Diagrammen verwendet:

Relationstypen

Insgesamt gibt es zwischen zwei Entitätsmengen drei grundlegende Relationstypen. (Relationen zwischen drei oder Entitätsmengen sollen hier nicht betrachtet werden.)

Bei einer 1-1-Relation ist jedem Element der Entitätsmengen A ein Element der Entitätsmengen B zugeordnet und jedem Element der Entitätsmenge B das entsprechende Element der Entitätsmenge A. Es handelt sich also um eine eineindeutige Zuordnung.

Bei einer n-1-Relation ist jedem Element der Entitätsmenge A ein Element der Entitätsmenge B zugeordnet. Einem Element der Entitätsmenge B können mehrere Elemente der Entitätsmenge A zugeordnet sein. Erhandelt sich also um eine eindeutige Zuordnung.

Bei einer n-m-Relation können jedem Element der Entitätsmenge A mehrere Elemente der Entitätsmenge B und jedem Element der Entitätsmenge B mehrere Elemente der Entitätsmenge A zugeordnet sein. Es handelt sich also um eine mehrdeutige Zuordnung.

Beispiele:

Ein Beispiel für eine 1-1-Relation ist die Beziehung „besitzt“ zwischen der Entitätsmenge „Erwachsene Person“ und der Entitätsmenge „Personalausweis“. Jede Person besitzt genau einen Personalausweis und zu einem Personalausweis gehört genau eine Person.

Ein Beispiel für eine n-1-Relation ist die Beziehung „lernt in“ zwischen der Entitätsmenge „Schüler“ und der Entitätsmenge „Klasse“. Ein Schüler lernt in genau einer Klasse. In einer Klasse lernen mehrere Schüler.

Ein Beispiel für eine für eine n-m-Relation ist die Beziehung „unterrichtet“ zwischen den Entitätsmengen „Lehrer“ und „Schüler“. Ein Lehrer unterrichtet mehrere Schüler und ein Schüler wird von mehreren Lehrern unterrichtet.

Beispiele für Modellierungsaufgaben

Bei der Modellierung von realen Problemen in einer Datenbank kann es sehr viele verschiedene Lösungsmöglichkeiten geben. Deshalb gelten bei den folgenden Aufgaben einige Konventionen, damit die entsprechenden Lösungen möglichst eindeutig ausfallen.

Entitätsmengen werden durch Substantive beschrieben, hinter denen die entsprechenden Attribute in Klammern stehen.

Ein Primärschlüssel kann eine Kombination aus mehreren Attributen sein. Bei den folgenden Aufgaben wird es aber immer ein Attribut geben welches allein als Primärschlüssel geeignet ist. Dieses muss in der Regel selbst herausgefunden werden.

Relationen werden durch Verben beschrieben werden. Auch eine Relation kann Attribute besitzen. Diese stehen dann hinter dem entsprechenden Verb in Klammern.

Beispiel 1

In einem Museum (name, adresse, fläche) befinden sich (seit) mehrere Kunstwerke (kennziffer, künstler, entstehungsjahr). Ein Kunstwerk befindet sich nur in einem Museum.

Insgesamt sind zwei Entitätsmengen zu betrachten „Museum“ und „Kunstwerk“. Für die Entitätsmenge „Museum“ ist das Attribut name als Primärschlüssel geeignet, für die Entitätsmenge „Kunstwerk“ das Attribut kennziffer. Zwischen den beiden Entitätsmengen besteht die Relation „befindet sich“ mit dem Attribut seit. Da sich ein Kunstwerk in nur einem Museum befinden kann und sich in einem Museum mehrere Kunstwerke befinden ist die Relation vom Typ n zu 1.

Beispiel 2

In der gymnasialen Oberstufe einer Schule gibt es Kurse(kursnr, fach, art, bezeichnung), Lehrer(kürzel, name, fächer) und Schüler(schnr, name, stufe). Ein Lehrer unterrichtet mehrere Kurse. Ein Kurs wird nur von einem Lehrer unterrichtet. Ein Schüler belegt mehrere Kurse mit bestimmten Noten (noten). Ein Kurs wird von mehreren Schülern belegt. Ein Lehrer ist Tutor mehrerer Schüler. Ein Schüler hat nur einen Tutor.

Gymnasiale Oberstufe und Schule werden nicht als Entitätsmengen betrachtet, da dahinter keine Attribute stehen. Es gibt also die Entitätsmengen Kurs mit dem Primärschlüssel kursnr, die Entitätsmenge Lehrer mit dem Primärschlüssel kürzel und die Entitätsmenge Schüler mit dem Primärschlüssel schnr. Die Relationen „unterrichtet“ und „ist Tutor“ sind vom Typ n zu 1, die Relation „belegt“ ist vom Typ n zu m und besitzt das Attribut noten.

Erklärvideo

Im folgenden Video werden die Inhalte dieser Seite nochmal erklärt.

>> Programm yed aus dem Video herunterladen

Aufgaben

Erstelle nach den oben beschriebenen Konventionen jeweils das ER-Diagramm!

Aufgabe 1

Eine Firma möchte eine Datenbank für ihre Fahrzeugflotte einrichten. Hierzu sollen die Fahrzeuge(kennzeichen, typ, modell, kraftstoff), die Fahrer (personalnummer, name), die Garagen(nummer) und die Abteilungen (bezeichnung, zimmernummer, telefonnummer) erfasst werden. Ein Fahrer besitzt eine Fahrerlaubnis die für mehrere Fahrzeuge, ein Fahrzeug darf von mehreren Fahrern gefahren werden. Ein Fahrzeug steht in einer Garage, in keiner Garage kann nur ein Fahrzeug stehen. Eine Abteilung besitzt (seit) mehrere Fahrzeuge, ein Fahrzeug gehört zu genau einer Abteilung.

Aufgabe 2

In einer Pizzeria werden Pizzatypen (name, preis) aus bestimmten Zutaten (name, vegetarisch(Ja/Nein)) hergestellt. Ein Pizzatyp besteht aus mehreren Zutaten, eine Zutat kann zur Herstellung meherer Pizzatypen verwendet werden. Für einen bestimmten Pizzatyp ist ein Pizzabäcker(name, alter) verantwortlich. Ein Pizzabäcker kann für mehrere Pizzatypen verantwortlich sein.

>> Relationales Modell