Benutzer-Werkzeuge

Webseiten-Werkzeuge


db:spezielle_beziehungen

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
db:spezielle_beziehungen [2019/05/02 21:59] – [Ternäre Beziehungen] roehnerdb:spezielle_beziehungen [2022/02/19 13:04] (aktuell) – [Ist-Beziehung (is-a)] roehner
Zeile 41: Zeile 41:
 </WRAP> </WRAP>
  
-==== Ternäre Beziehungen ==== +====Ist-Beziehung (is-a)==== 
-Meistens kommt man mit binären Beziehungen im ER-Modell aus, manchmal sind aber drei oder mehr Entitytypen an einer Beziehung beteiligtMuss zum Beispiel eine Fluggesellschaft darüber Buch führen, welche Piloten welche Flugzeuge auf welchen Fluglinien geflogen haben, so ist das mit binären Beziehungen zwischen Pilot, Flugzeug und Fluglinie nicht machbar, man braucht eine //ternäre// Beziehung. +Die aus der objektorientierten Modellierung bekannten Spezialisierungs- bzwGeneralisierungsbeziehungen zwischen Ober- und Unterklasse gibt es in der ER-Modellierung als sogenannte Ist-Beziehung (is-a).
  
-{{TernaereBeziehung.gif}}\\ +Als Beispiel betrachten wir Mitarbeiter einer Universität, welche durch ihre Personalnummer identifiziert werden und einem Institut angehören. Einige dieser Mitarbeiter sind Prüfer für ein bestimmtes Fach.
-Ternäre Beziehung //Pilot-Flugzeug-Fluglinie//+
  
-Bei einer ternären Beziehung kann auch mit KaMeund Mumi-Fragen die Kardinalität und Optionalität bestimmt werden. Allerdings müssen diese Fragen etwas erweitert werden.+{{is-a.png}}\\
  
-==KaMe-Frage== +Jeder Prüfer ist genau ein Mitarbeiter, aber nicht jeder Mitarbeiter ist ein Prüfer. Die Kardinaliät dieser Beziehung ist also 1:1 und die Optionalität muss:kann. Zudem ist Prüfer ein schwacher Entitätstyp, weil er nur durch Hinzunahme des Fremdschlüssels Personalnummer identifiziert werden kann. 
-<WRAP box round> +
-**Kann eine** Entität des Typs A und **eine** Entität B des Typs B mit **mehreren** Entitäten des Typs C in Beziehung stehen?\\ +
-  Ja    →  Kardinalität ist +
-  Nein  →  Kardinalität ist 1 +
-</WRAP>+
  
-Die Kardinalitätsangabe wird an das Ende der Beziehung also an C geschrieben. +Die Abbildung in das Relationenmodell ergibt die beiden Relationen:
- +
-Beispiele: +
-  *   **Kann ein** Pilot mit **einem** Flugzeug auf **mehreren** Fluglinien eingesetzt werden? Ja, Kardinaliät n bei Fluglinien +
-  *   **Kann ein** Pilot auf **einer** Fluglinie mit **mehreren** Flugzeugen eingesetzt werden? Ja, Kardinalität n bei Flugzeug +
-  *   **Kann ein** Flugzeug auf **einer** Fluglinie mit **mehreren** Piloten eingesetzt werden? Nein, Kardinalität 1 bei Pilot +
- +
- +
-**MuMi-Frage** +
- +
-<WRAP box round> +
-**Muss eine** Entität des Typs A mit **mindestens einer** Entität des Typs B und **einer** Entität des Typs C in Beziehung stehen? +
-  Ja     →   nicht optional, obligatorisch, muss-Beziehung +
-  Nein   →   optional, nicht obligatorisch, kann-Beziehung +
-</WRAP> +
- +
-Die Optionalität wird an den Anfang der Beziehung also an A geschrieben. +
- +
-Beispiele: +
-  * **Muss ein** Pilot **mindestens** in **einem** Flugzeug auf **einer** Fluglinie eingesetzt werden? Ja, Optionalität //muss// an Pilot +
-  * **Muss ein** Flugzeug **mindestens** auf **einer** Fluglinie mit **einem** Piloten eingesetzt werden? Ja, Optionalität muss an Flugzeug +
-  * **Muss eine** Fluglinie **mindestens** mit **einem** Piloten und **einem** Flugzeug eingesetzt werden? Nein, Optionalität kann an Fluglinie +
- +
- +
-Zur Abbildung einer mehrstelligen Beziehung in das Relationenmodell fasst man die Primärschlüsselattribute aller beteiligten Entitätstypen zu einer Relation zusammen und ergänzt sie um die Beziehungsattribute.+
  
 <WRAP pre> <WRAP pre>
-eingesetzt(↑__PilotenID__, ↑__FlugzeugID__↑__FluglinienID__, Abflug, Ankunft+Mitarbeiter(__Personalnummer__Institut)\\ 
-</WRAP> +Prüfer(__Personalnummer__Fach
- +</WRAP>  
-Mehrstellige Beziehungen werden wie folgt bezeichnet: +
- +
-^ Entiätstypen   ^ Bezeichnung  ^  +
-| 2 | binär      |  +
-| 3 | ternär     | +
-| 4 | quaternär |  +
-| 5 | quinär     |  +
- +
-====Aufgaben==== +
-**ER-Diagramm Universität**\\ +
-Gegeben ist das ER-Diagramm Universität: +
- +
-{{ERUniversitaet.png}} +
- +
-a) Warum muss die //prüft//-Beziehung als ternäre Beziehung modelliert werden?\\ +
-b) Überführe das ER-Diagramm in das Relationenmodell. +
- +
-**Bibliothek**\\ +
-Gegeben ist die folgende Beziehung zwischen Büchern und ausleihbaren Buchexemplaren in einer Bibliothek. Bestimme und begründe Kardinalität und Optionalität der Beziehung. Wie sieht die Abbildung in das Relationenmodell aus? Erläutere die Schlüsselproblematik.+
  
-{{isa2.png}} 
  
 +\\
 +**Aufgabe**\\
 **Datenbank Fluggesellschaft**\\ **Datenbank Fluggesellschaft**\\
 In der Datenbank einer Fluggesellschaft werden von den erfassten Personen eine Identifikationsnummer, Vor- und Nachname, Geburtsdatum und die Adresse gespeichert. Bei Flugpassagieren werden zusätzlich das Geschlecht und Raucher/Nichtraucher gespeichert. Für die Angestellten der Fluggesellschaft müssen zusätzlich der Beruf, die Religionszugehörigkeit und die Gehaltsgruppe gespeichert werden. In der Datenbank einer Fluggesellschaft werden von den erfassten Personen eine Identifikationsnummer, Vor- und Nachname, Geburtsdatum und die Adresse gespeichert. Bei Flugpassagieren werden zusätzlich das Geschlecht und Raucher/Nichtraucher gespeichert. Für die Angestellten der Fluggesellschaft müssen zusätzlich der Beruf, die Religionszugehörigkeit und die Gehaltsgruppe gespeichert werden.
Zeile 115: Zeile 67:
 a) Modelliere ein ER-Diagramm mit Kardinalitäten und Optionalitäten. a) Modelliere ein ER-Diagramm mit Kardinalitäten und Optionalitäten.
  
-b) Bilde die drei Entitätstypen und zwei is-a-Beziehungen in das Relationenmodell ab.+b) Bilde die drei Entitätstypen und die zwei is-a-Beziehungen in das Relationenmodell ab.
  
db/spezielle_beziehungen.1556827179.txt.gz · Zuletzt geändert: 2019/05/02 21:59 von roehner