1. Entity-Relationship

Werbung
Prof. Dr. Stephan Karczewski
Datenbanken 1
Aufgabe 1
1. Entity-Relationship-Modellierung
1.1 Datenmodell Verein
Aus Interviews hat sich für die Datenmodellierung folgender Sachverhalt
ergeben:
Ein Verein hat viele Mitglieder. Vereine besitzen einen eindeutigen Namen
und – da sehr traditionsbewusst – eine Vereinsfarbe. Mitglieder können
mehreren Vereinen angehören. Sie haben eine Mitgliedsnummer. Es soll für
jede Mitgliedschaft in einem Verein das Datum des Eintritts abgespeichert
werden. Damit Mitglieder identifiziert werden können, muss man neben der
Mitgliedsnummer auch den Vereinsnamen kennen. Das Mitglied Schulz
wohnt in Frankfurt. Jeder Verein besitzt (unter Umständen mehrere) Konten,
jedes für einen Zweck (z.B. Mitgliederbeiträge, Spenden). Ein Konto wird
eindeutig über seine Nummer und den Namen des Bankinstituts identifiziert.
Das Datum der Kontoeröffnung ist ebenfalls zu speichern.
Prof. Dr. Stephan Karczewski
Datenbanken 1
Aufgabe 1
1.2 Datenmodell FLUGGESELLSCHAFT
Im Folgenden sind die Notizen eines Kollegen aufgeschrieben, der ein
Gespräch mit einem Kunden geführt hat. Sie sollen diese benutzen, um eine
Datenbank aufzubauen. Hierzu ist zunächst ein ER-Diagramm aufzustellen.
Passagiere buchen Abflüge. Abflüge werden identifiziert durch ein Datum und
die dazugehörige Flugnummer. Ein Abflug ist also ein Flug zu einem
bestimmten Datum. Flüge werden durch eine Flugnummer (z.B. LH222)
identifiziert. Darüber hinaus enthalten Flüge die Attribute. Start, Ziel, Flugzeit
und KM. Passagiere werden durch Name und Adresse identifiziert. Das Alter
wird ebenfalls abgespeichert. Zu jeder Buchung eines Passagiers werden
Preis, Sitznummer und Klasse gespeichert. Ein Pilot kann für mehrere
Abflüge eingeplant werden. Zu jedem Abflug gibt es jedoch nur einen Piloten.
Dieser ist - ebenso wie jeder Techniker - Angestellter der Fluggesellschaft.
Jeder Angestellte hat - neben seiner identifizierenden Nummer - noch die
Attribute Name, Adresse, Beruf und Gehalt. Der Pilot hat darüber hinaus die
Attribute Stunden (seiner Flugzeit) und seine Lizenznummer. Der Techniker
hat als Attribut noch die Teamnummer. Jeder Pilot kann mehrere Maschinen
fliegen. Dies gilt natürlich auch umgekehrt. Die Techniker können
verschiedene Maschinen warten und umgekehrt. Maschinen werden
identifiziert durch Hersteller(-name) und Typ (z.B. Boening 747). Außerdem
besitzen Maschinen eine Länge, Anzahl Sitze und km/h. Zu jedem
Maschinentyp gibt es viele konkrete Flugzeuge. Diese besitzen über die
Maschine hinaus die Attribute Seriennummer (dies ist der Schlüssel), Datum
(des Baus) und Stunden (wie lange schon geflogen). Jedes Flugzeug kann
für mehrere Abflüge vorgesehen werden. Für einen Abflug gibt es jedoch nur
ein Flugzeug. Flugzeuge benötigen Ersatzteile. Ein Ersatzteil hat die Attribute
Nummer (Schlüssel), Bezeichnung und Gewicht. Der Preis jedes Ersatzteils
wird jeweils neu festgelegt, wenn es für ein Flugzeug benötigt wird.
Prof. Dr. Stephan Karczewski
Datenbanken 1
Aufgabe 1
Aufgaben:
Vorbemerkung: Gehen Sie bei den folgenden Aufgaben so vor, dass Sie
zunächst die Folge von a) – f) für 1.1 und anschließend die gleiche Prozedur
für 1.2 durchführen.
Speichern Sie zum Abschluss des heutigen Praktikums die erzeugten MSAccess-Datenbanken und die Oracle-Skripte auf einem geeigneten Medium
oder senden Sie sich das Ergebnis per Email selbst zu.
a) Entwickeln Sie aus den Textpassagen aus 1.1 und 1.2 jeweils ein EntityRelationship-Diagramm mit Entitätstypen (jeweils mit Attributen und
Primärschlüsseln) und Beziehungstypen mit Attributen und die
dazugehörigen Kardinalitäten.
b) Setzen Sie Ihr ERD mit dem PowerDesigner in ein äquivalentes Modell
um.
c) Übersetzen Sie Ihr logisches Modell in ein physisches (Ziel: MS Access).
Fügen Sie spätestens hier Primärschlüssel ein.
d) Generieren Sie die dazu passende MS Access-Datenbank. Beachten Sie
dabei die Hinweise, die Sie von PowerDesigner zur Generierung erhalten.
e) Überprüfen Sie das erzeugte Ergebnis und korrigieren Sie ggfs. Fehler in
dieser Datenbank aus MS Access heraus.
f) Führen Sie die Schritte b) bis d) für das DB-System Oracle aus und
überprüfen Sie die erzeugte Datei.
Herunterladen