Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Karin Heinrich Geändert vor über 8 Jahren
1
Übungsblatt 4 Erläuterungen Wintersemester 15/16 DBIS
2
Aufgabe 1 Relationales Datenbankmodell Wintersemester 15/16 DBIS
3
Überführung Schritt 1 - Entitytypen und deren Attribute übernehmen
Kunde(KundenNr, Name, Adresse) Pkw(FahrzeugNr, Farbe, Baujahr) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*, Telefon) Wintersemester 15/16 DBIS
4
Überführung Schritt 1 - Entitytypen und deren Attribute übernehmen
Kunde(KundenNr, Name, Adresse) Pkw(FahrzeugNr, Farbe, Baujahr) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*, Telefon) Problem: Nichtatomare Attribute Wintersemester 15/16 DBIS
5
Überführung Schritt 2 – Nichtatomare Attribute auflösen
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) Wintersemester 15/16 DBIS
6
Überführung Schritt 3 – Nach und nach die Beziehungen auflösen 1:1-Beziehungen
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) Wintersemester 15/16 DBIS
7
Überführung Schritt 3 – Nach und nach die Beziehungen auflösen 1:N-Beziehungen
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) Wintersemester 15/16 DBIS
8
Überführung Schritt 3 – Nach und nach die Beziehungen auflösen 1:N-Beziehungen
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr, KartenNr, KdnNr, HSt, WSt) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) Wintersemester 15/16 DBIS
9
Überführung Schritt 3 – Nach und nach die Beziehungen auflösen N:M-Beziehungen
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr, KartenNr, KdnNr, HSt, WSt) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) Wintersemester 15/16 DBIS
10
Überführung Schritt 3 – Nach und nach die Beziehungen auflösen N:M-Beziehungen
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr, KartenNr, KdnNr, HSt, WSt) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) empfiehlt(HSt,WSt) Wintersemester 15/16 DBIS
11
Überführung Schritt 3 – Nach und nach die Beziehungen auflösen N:M-Beziehungen
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr, KartenNr, KdnNr, HSt, WSt) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) empfiehlt(HSt,WSt) hasst(KundenNr, HSt) Wintersemester 15/16 DBIS
12
Überführung Schritt 3 – Nach und nach die Beziehungen auflösen N:M-Beziehungen
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr, KartenNr, KdnNr, HSt, WSt) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) empfiehlt(HSt,WSt) hasst(KundenNr, HSt) bevorzugt(KundenNr, HSt) Wintersemester 15/16 DBIS
13
Überführung Schritt 3 – Nach und nach die Beziehungen auflösen N:M-Beziehungen
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr, KartenNr, KdnNr, HSt, WSt) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) empfiehlt(HSt,WSt) hasst(KundenNr, HSt) bevorzugt(KundenNr, HSt) beteiligt_an(Mutter,Tochter) Wintersemester 15/16 DBIS
14
Überführung Schritt 4 – Logische Prüfung des Modells
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr, KartenNr, KdnNr, HSt, WSt) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) empfiehlt(HSt,WSt) hasst(KundenNr, HSt) bevorzugt(KundenNr, HSt) beteiligt_an(Mutter,Tochter) Wintersemester 15/16 DBIS
15
Überführung Schritt 4 – Logische Prüfung des Modells
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr, KartenNr, KdnNr, HSt, WSt) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) empfiehlt(HSt,WSt) hasst(KundenNr, HSt) bevorzugt(KundenNr, HSt) beteiligt_an(Mutter,Tochter) Die KartenNr in PKW?! Eigene Relation für Miete semantisch sinnvoll Wintersemester 15/16 DBIS
16
Überführung Schritt 3 – Nach und nach die Beziehungen auflösen N:M-Beziehungen
Kunde(KundenNr, Name) hat_Adresse(KundenNr, Strasse, Ort, PLZ) Pkw(FahrzeugNr, Farbe, Baujahr, KartenNr, KdnNr, HSt, WSt) Hersteller(Name, Hauptsitz) Werkstatt(Name, FaxNr*) hat_telefon(WerkstattName, TelefonNr) empfiehlt(HSt,WSt) hasst(KundenNr, HSt) bevorzugt(KundenNr, HSt) beteiligt_an(Mutter,Tochter) Telefonnummern-Sharing?! Wintersemester 15/16 DBIS
17
Überführung Schritt 4 – Kardinalitäten durch Optionalität retten
„Nulloption“ auf der N-Seite in 1:N-Beziehungen bereits vorhanden „Nulloption“ in N:M bereits vorhanden PKW.KdNr bleibt als sinnvoll übrig Weitere Attribute optional vorstellbar (eigenes Modell überprüfen): PKW.Farbe? Vermietung.KartenNr? Attribute in hat_Adresse? Hersteller.Hauptsitz? Wintersemester 15/16 DBIS
18
In Vermietung darf ein konkreter Kunde nur höchstens dreimal auftreten
Überführung Schritt 5 – Kardinalitäten (und anderes) durch Integritätsbedingungen retten In Vermietung darf ein konkreter Kunde nur höchstens dreimal auftreten In beteiligt_an darf ein konkreter Hersteller nicht gleichzeitig als Mutter und Tochter auftreten (Gewährleistung von Zyklenfreiheit) In Werkstatt.Telefon sollte jede Telefonnummer nur einmal auftreten?!? (und andere Miniwelt-Spezifika) Wintersemester 15/16 DBIS
19
Aufgabe 2 Stücklisten Wintersemester 15/16 DBIS
20
Überführung in relationales Modell
Wintersemester 15/16 DBIS
21
Überführung in relationales Modell
Bauteil(Bezeichnung, Preis) Stückliste(Oberteil, Unterteil, Anzahl) Wintersemester 15/16 DBIS
22
Relationsschema und Relationen
Bauteil Bezeichnung Preis Stückliste Oberteil Unterteil Anzahl Wintersemester 15/16 DBIS
23
Relationsschema und Relationen
Bauteil Bezeichnung Preis A 1,00 B 2,00 C 3,00 D E 4,00 X 5,00 Y 5,50 Z 9,99 Stückliste Oberteil Unterteil Anzahl Wintersemester 15/16 DBIS
24
Relationsschema und Relationen
Bauteil Bezeichnung Preis A 1,00 B 2,00 C 3,00 D E 4,00 X 5,00 Y 5,50 Z 9,99 Stückliste Oberteil Unterteil Anzahl X A 1 B Z E 7 C 4 D 8 3 Y 5 Wintersemester 15/16 DBIS
25
Referenzielle Integrität I
Im Allgemeinen nur solche Instanzen einer Datenbank erlaubt, deren Relationen die definierten Integritätsbedingungen erfüllen. Integritätsbedingungen sind deklarativ: Sie definieren die zulässigen Instanzen, ohne Aussagen zur konkreten Umsetzung. Z.B. Fremdschlüsselbedingungen keine defekten Verweise zwischen den Tupeln in den Tabellen Referentielle Integrität Z.B. Trigger Regeln für Aktionen zur Gewährleistung der Integrität Auch für Behandlung von Verletzungen. Wintersemester 15/16 DBIS
26
Referenzielle Integrität II
„Definition der Umsetzung“ über referential Actions: Mögliche referentielle Aktionen, wenn das Tupel, auf das sich der Fremdschlüssel bezieht, gelöscht (ON DELETE) bzw. geändert (ON UPDATE) wird: Wintersemester 15/16 DBIS
27
Referenzielle Integrität III
Anwendbarkeit im Beispiel Wintersemester 15/16 DBIS
28
Aufgabe 3 Flüsse Wintersemester 15/16 DBIS
29
Lösung mit zwei Relationen
Wintersemester 15/16 DBIS
30
Lösung mit zwei Relationen
Fluss(Name, Länge) mündet_in(Hauptfluss, Nebenfluss, Ort) Sind in dem Modell Flüsse darstellbar, die in keinen anderen Fluss münden? Nullwerte sind schon wegen der Modellierung nicht erlaubt! Wintersemester 15/16 DBIS
31
Lösung mit einer Relation
Fluss(Name, Länge, Einmündungsfluss, Ort) Sind in dem Modell Flüsse darstellbar, die in keinen anderen Fluss münden? Fluss(Name, Länge, Einmündungsfluss*, Ort*) Wintersemester 15/16 DBIS
32
Aufgabe 4 Relationen Wintersemester 15/16 DBIS
33
Zu a) Kreuzprodukt (kartesisches Produkt) sind alle Kombinationsmöglichkeiten der Domänenwerte, aus MatrNr x Fach x Semester Summe: 2 * 2 * 3 = 12 Elemente Ergebnis: (4711, Informatik, 1), (4711, Informatik, 2), (4711, Informatik, 3), (4711, Biologie, 1), (4711, Biologie, 2), (4711, Biologie, 3), (79005, Informatik, 1), (79005, Informatik, 2), (79005, Informatik, 3), (79005, Biologie, 1), (79005, Biologie, 2), (79005, Biologie, 3) Wintersemester 15/16 DBIS
34
Zu b) Die Kombinationsmöglichkeiten berechnen sich zum Beispiel mit 2n, wobei n die Anzahl der Elemente des kartesischen Produktes ist. 212 = 4096 Wintersemester 15/16 DBIS
35
Zu c) MatrNr als Schlüssel MatrNr muss eindeutig sein
Ein Beispiel in Mengenschreibweise: R={(4711,Informatik,1), (79005, Informatik,2)} Ein Beispiel als Tabelle: 4711 Informatik 1 79005 2 Wintersemester 15/16 DBIS
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.