Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Übungsblatt 4 Erläuterungen Wintersemester 15/16 DBIS.

Ähnliche Präsentationen


Präsentation zum Thema: "Übungsblatt 4 Erläuterungen Wintersemester 15/16 DBIS."—  Präsentation transkript:

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


Herunterladen ppt "Übungsblatt 4 Erläuterungen Wintersemester 15/16 DBIS."

Ähnliche Präsentationen


Google-Anzeigen