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

Slides:



Advertisements
Ähnliche Präsentationen
1 Vorlesung Datenbanken I Der Relationale Datenbankentwurf mit dem PowerDesigner 7.5 von Sybase.
Advertisements

Datenbankdesign mit ACCESS.
Zur Rolle der Sprache bei der Modellierung von Datenbanken
Relationaler Datenbankentwurf (II)
spezielle Nutzersichten formale Ebene (deskriptive Regeln)
Datenmodellierung Externe Phase Informationsstruktur
Normalisierung nach Edgar. F. CODD (1970)
Kapitel 3: Das Relationenmodell
Recap - Kapitel 3 « Das Relationenmodell »
Franziska Schmidt Sarah Ahlheit
Grundlagen Datenbanken
Datenbankentwurf mit Hilfe des ER-Modells entwickeln
Das Relationen-Modell
Das Relationenmodell 1.
Übung Datenbanksysteme UML
Datenintegrität Referentielle Integrität create table
Relationenmodell (RM)
Was ist eine Datenbank? ermöglicht die Eingabe von Daten
Datenmodellierung - Aufbau einer Datenbank -
Kapitel 9: Integritätssicherung
© Katharina Brachmann Normalformen Oldenbourg S137, Klett S117
Buch S70ff (Informatik I, Oldenbourg-Verlag)
Beziehungen zwischen Klassen
Abbildungsverfahren (1)
Vorüberlegung Frühere Forderung: Möglichst alle im konzeptuellen Schema ausdrückbaren Sachverhalte sollen sich im logischen Schema wiederfinden. Forderung.
3.5.2 Fremdschlüssel/ Referentielle Integrität (6/9)
3.5.2 Fremdschlüssel/ Referentielle Integrität (1/9)
1 Klassen (1) Eine Klasse beschreibt eine Menge von Objekten mit gemeinsamer Struktur gemeinsamem Verhalten gemeinsamen Beziehungen gemeinsamer Semantik.
Relationale Datenbankmodelle
Integritätsbedingungen
Relationale Datenbanken II
Die Grundterminologie
Datenbank Wandertag Situationsbeschreibung
Datenbank.
Access 2000 Willkommen im Access-Kurs Oliver Mochmann.
SS 2011 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung #5 Relationale Entwurfstheorie.
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #7 SQL (Teil 4)
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
Datenbanksysteme für hörer anderer Fachrichtungen
Das Entity-Relationship-Modell
Einführung in Datenbankmodellierung und SQL
Relationentheorie AIFB SS Relationen in 1NF und relationale Datenbanken(1/5) Attribut a Wertebereichdom(a) (domain) AttributemengeA = {a 1,...,
Relationales Datenmodell und DDL
Ihr Trainer: Gerold Hämmerle
Normalisierungsprozess
Datenbank Wandertag Situationsbeschreibung
Grundlagen des Relationenmodells
1 Polymorphe Konsistenzbedingungen (1) Polymorphe Konsistenzbedingungen legen fest, welche Arten von Zustandsbeschränkungen nach einer Konkretisierung.
Rel-Modell Schema (3|8) Beispiel 8-12: Rel. Datenbank-Schema (beispielhaft) für eine rel. DB mit den Relationen angestellte1, projekt1.
Semantische Integritätsbedingungen  AIFB SS trigger-Klausel (2/5) Beispiel 3-5: Angestellter: (Ang-Nr, Ang-Name, Gehalt,Familienstand, Abt-Bez).
1 Referenzielle Konsistenz (1) Vorgehensweise: Klausel references mit nachfolgender Spezikation eines Attributs einer anderen Tabelle identifiziert ein.
8.4.3 Übertragung von Beziehungstypen (1|12)
Datenbanken Eine Einführung.
SS 2014 – IBB4B Datenmanagement Do 17:00 – 18:30 R Vorlesung #4 Überführung des ER-Modells in das relationale Modell.
Rel-Modell Einige Definitionen (1|2) Kartesisches Produkt: W 1, W 2, …, W n beliebige Mengen. W 1  W 2  …  W n ::= {(w 1, w 2, …,
Was ist eine Datenbank „MS Access“
WS 2014/15 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #9 SQL Zusammenfassung.
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #4 Überführung des ER-Modells in das relationale Modell.
Datenbanken Datenbank-Entwurf
Entität Attribute Beziehung AUTOR CD M 1 N leihen erstellen N verfasst
Relationales Datenmodell
CD BÜCHER FREUNDE INTERPRETAUTOR Entität Attribute Beziehung Preis TitelCd# Musikricht- ung von bis Handy PLZ Ort Straße Gdatum Vorname Nachname.
Übungsblatt 3 Erläuterungen Wintersemester 15/16 DBIS.
Sei B = Beziehungstyp, min/max-Notation Kardinalität (0,1) von E: Jede Ausprägung e  E t (E) geht in diesem Fall höchstens einmal in B ein. Das bedeutet.
Veranstaltung: Datenbanken I Dozent: Ioannis Papakostas Belegarbeit 6 Online-Bestellung von Büchern Stefan Rüschenberg (Matrikel-Nr.: ) Sebastian.
Vorlesung #5 Relationale Entwurfstheorie
Vorlesung #5 Überführung (Fortsetzung) / Normalformen
ER-Modell und Relationales Schema
Datenbanken Von Amed und Alicia.
 Präsentation transkript:

Übungsblatt 4 Erläuterungen Wintersemester 15/16 DBIS

Aufgabe 1 Relationales Datenbankmodell Wintersemester 15/16 DBIS

Ü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

Ü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

Ü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

Ü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

Ü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

Ü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

Ü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

Ü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

Ü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

Ü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

Ü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

Ü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

Ü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

Ü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

Ü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

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

Aufgabe 2 Stücklisten Wintersemester 15/16 DBIS

Überführung in relationales Modell Wintersemester 15/16 DBIS

Überführung in relationales Modell Bauteil(Bezeichnung, Preis) Stückliste(Oberteil, Unterteil, Anzahl) Wintersemester 15/16 DBIS

Relationsschema und Relationen Bauteil Bezeichnung Preis Stückliste Oberteil Unterteil Anzahl Wintersemester 15/16 DBIS

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

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

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

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

Referenzielle Integrität III Anwendbarkeit im Beispiel Wintersemester 15/16 DBIS

Aufgabe 3 Flüsse Wintersemester 15/16 DBIS

Lösung mit zwei Relationen Wintersemester 15/16 DBIS

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

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

Aufgabe 4 Relationen Wintersemester 15/16 DBIS

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

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

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