Datenbanken 6: Normalisierung

Größe: px
Ab Seite anzeigen:

Download "Datenbanken 6: Normalisierung"

Transkript

1 Datenbanken 6: Normalisierung 26. IV. 2016

2 Outline 1 Organisatorisches 2 SQL 3 Überblick Datenbankdesign 4 Normalisierung Erste Normalform Zweite Normalform Dritte Normalform Boyce-Codd Normal Form Vierte Normalform

3 Organisatorisches In zwei Wochen, am 10. Mai findet der zweite Zwischentest statt. Aufsicht übernimmt Martin Antenreiter. VO entfällt an diesem Tag. Fragestunde bereits nächste Woche

4 SQL Nachbesprechung Zwischentest korrelierte Subqueries

5 Nachbesprechung Zwischentest LIKE vs. = COUNT vs. SUM Subquery statt WHERE HAVING statt WHERE DISTINCT für Abgabesystem

6 Datenbankdesign bisher: zeichne Entitäten, Relationen, und Attribute in ein ER-Diagramm leite aus dem ER-Diagramm ein Datenbankschema ab Nun beschäftigen wir uns mit einem verfeinerten Zugang ( Normalisierung ). Die Grundlage dafür ist der Begriff der funktionalen Abhängigkeit.

7 Funktionale Abhängigkeit Zur Erinnerung: Definition (funktionale Abhängigkeit) Gegeben sei ein abstraktes relationales Datenbankschema R sowie (Mengen von) Attribute(n) α, β in R. Wir sagen, dass β funktional abhängig von α ist (α β), wenn für alle Realisierungen R of R: Immer wenn zwei Tupel (Zeilen) dieselben Werte für α haben, so haben sie auch gleiche Werte für β. Achtung: Für unsere Belange ist nur diese Art von Abhängigkeit relevant. Andere Formen von Abhängigkeit (z.b. Korrelation) spielen keine Rolle und dürfen nicht mit funktionaler Abhängigkeit verwechselt werden!

8 Normalisierung: Ausblick Wir kennen inzwischen: funktionale Abhängigkeiten (FDs) Eigenschaften guter Zerlegungen (Verlustlosigkeit, Abhängigkeitserhaltung)

9 Normalisierung: Ausblick Wir kennen inzwischen: funktionale Abhängigkeiten (FDs) Eigenschaften guter Zerlegungen (Verlustlosigkeit, Abhängigkeitserhaltung) Wir hätten gerne: guten Weg, um eine gegebene Relation R in kleinere Relationen zu zerlegen

10 Normalisierung: Ausblick Wir kennen inzwischen: funktionale Abhängigkeiten (FDs) Eigenschaften guter Zerlegungen (Verlustlosigkeit, Abhängigkeitserhaltung) Wir hätten gerne: guten Weg, um eine gegebene Relation R in kleinere Relationen zu zerlegen Wir machen dies über: Schritt-für-Schritt Normalisierung Mit jedem Schritt erreichen wir eine höhere Normalisierungsstufe (1 bis 4).

11 Normalisierung: Ausblick Wir hätten gerne: guten Weg, um eine gegebene Relation R in kleinere Relationen zu zerlegen Wir machen dies über: Schritt-für-Schritt Normalisierung Mit jedem Schritt erreichen wir eine höhere Normalisierungsstufe (1 bis 4). Normalisierung erreicht: verlustlose Zerlegung manchmal auch abhängigkeitserhaltende Zerlegung In den entstehenden Relationen gibt es nur mehr interessante FDs zwischen Schlüssel- und Nichtschlüsselattributen.

12 Normalisierung Alternatives Material zu Normalisierung: Kapitel 2 von Andreas Meier: Relationale und postrelationale Datenbanken, Springer (innerhalb der MUL frei als pdf zum Download)

13 Erste Normalform Outline 1 Organisatorisches 2 SQL 3 Überblick Datenbankdesign 4 Normalisierung Erste Normalform Zweite Normalform Dritte Normalform Boyce-Codd Normal Form Vierte Normalform

14 Erste Normalform Erste Normalform Definition (1NF) Eine Relation ist in 1NF, wenn alle Attribute atomar sind. Diese Voraussetzung haben wir bereits gemacht. Beispiel einer Tabelle/Relation, die nicht in 1NF: Vater Mutter Kinder Karl Maria {Fritz, Franziska} Ronald Elisabeth {Hannes, Kathrin} Andreas Marianne {Sophia}

15 Erste Normalform Erste Normalform Beispiel Beispiel einer Tabelle/Relation, die nicht in 1NF: Vater Mutter Kinder Karl Maria {Fritz, Franziska} Ronald Elisabeth {Hannes, Kathrin} Andreas Marianne {Sophia} kann leicht in 1NF konvertiert werden: Vater Mutter Kind Karl Maria Fritz Karl Maria Franziska Ronald Elisabeth Hannes Ronald Elisabeth Kathrin Andreas Marianne Sophia

16 Zweite Normalform Outline 1 Organisatorisches 2 SQL 3 Überblick Datenbankdesign 4 Normalisierung Erste Normalform Zweite Normalform Dritte Normalform Boyce-Codd Normal Form Vierte Normalform

17 Zweite Normalform Zweite Normalform Definition (2NF) Eine Relation ist in 2NF, wenn sie in 1NF ist und jedes Nichtschlüsselattribut voll funktional abhängig von jedem Kandidatenschlüssel ist. (Zur Erinnerung: β ist voll funktional abhängig von α, wenn α β mit α minimal.) Intuition: Jedes Attribut im Schlüssel ist wichtig.

18 Zweite Normalform Zweite Normalform Beispiel Betrachten folgende Tabelle mit Studenteninformationen: (Annahme: nur ein Studium pro Student) Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Wie sieht Schlüssel in dieser Tabelle aus? D.h. welche Werte müssen festgelegt werden, um eine Zeile eindeutig zu identifizieren?

19 Zweite Normalform Zweite Normalform Beispiel Betrachten folgende Tabelle mit Studenteninformationen: (Annahme: nur ein Studium pro Student) Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Wie sieht Schlüssel in dieser Tabelle aus? D.h. welche Werte müssen festgelegt werden, um eine Zeile eindeutig zu identifizieren? Legt man Matrikelnummer, Lehrveranstaltungsnummer sowie Datum fest, kann es zu den gegebenen Werten nur eine Zeile in der Tabelle geben. {MNr,LvaNr,Datum} bildet (Super-)Schlüssel der Tabelle.

20 Zweite Normalform Zweite Normalform Beispiel Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Listen für jedes Nichtschlüsselattribut jene Schlüsselattribute auf, von denen es voll funktional abhängt: Vname: Nname: Stkz: Studium: Lva: Note:

21 Zweite Normalform Zweite Normalform Beispiel Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Listen für jedes Nichtschlüsselattribut jene Schlüsselattribute auf, von denen es voll funktional abhängt: Vname: MNr Nname: Stkz: Studium: Lva: Note:

22 Zweite Normalform Zweite Normalform Beispiel Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Listen für jedes Nichtschlüsselattribut jene Schlüsselattribute auf, von denen es voll funktional abhängt: Vname: MNr Nname: MNr Stkz: Studium: Lva: Note:

23 Zweite Normalform Zweite Normalform Beispiel Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Listen für jedes Nichtschlüsselattribut jene Schlüsselattribute auf, von denen es voll funktional abhängt: Vname: MNr Nname: MNr Stkz: MNr Studium: Lva: Note:

24 Zweite Normalform Zweite Normalform Beispiel Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Listen für jedes Nichtschlüsselattribut jene Schlüsselattribute auf, von denen es voll funktional abhängt: Vname: MNr Nname: MNr Stkz: MNr Studium: MNr Lva: Note:

25 Zweite Normalform Zweite Normalform Beispiel Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Listen für jedes Nichtschlüsselattribut jene Schlüsselattribute auf, von denen es voll funktional abhängt: Vname: MNr Nname: MNr Stkz: MNr Studium: MNr Lva: LvaNr Note:

26 Zweite Normalform Zweite Normalform Beispiel Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Listen für jedes Nichtschlüsselattribut jene Schlüsselattribute auf, von denen es voll funktional abhängt: Vname: MNr Nname: MNr Stkz: MNr Studium: MNr Lva: LvaNr Note: MNr, LvaNr, Datum

27 Zweite Normalform Zweite Normalform Beispiel Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Listen für jedes Nichtschlüsselattribut jene Schlüsselattribute auf, von denen es voll funktional abhängt: Vname: MNr Nname: MNr Stkz: MNr Studium: MNr Lva: LvaNr Note: MNr, LvaNr, Datum Diese Tabelle ist nicht in 2NF!

28 Zweite Normalform Zweite Normalform Beispiel bekommen 2NF, indem Attribute, die von derselben Menge von Schlüsselattributen abhängen, in einer Tabelle zusammengefasst werden: MNr Vname Nname Stkz Studium LvaNr Lva MNr LvaNr Datum Note Falls es kein Nichtschlüsselattribut gibt, das vom gesamten Schlüssel abhängt, gibt es eine zusätzliche Tabelle, die nur die Schlüsselwerte enthält!

29 Dritte Normalform Outline 1 Organisatorisches 2 SQL 3 Überblick Datenbankdesign 4 Normalisierung Erste Normalform Zweite Normalform Dritte Normalform Boyce-Codd Normal Form Vierte Normalform

30 Dritte Normalform Dritte Normalform Definition (3NF) Eine Relation ist in 3NF, wenn sie in 1NF ist und für jede FD α β mindestens eine der folgenden Bedingungen gilt: 1 β α, d.h. die FD α β ist trivial, 2 β ist in einem Kandidatenschlüssel enthalten, 3 α ist ein Superschlüssel. Insbesondere ist eine Relation nicht in 3NF, wenn es FDs zwischen Attributen gibt, die nicht Teil eines (Kandidaten-/Super-)Schlüssels sind. Intuition: wollen keine FDs zwischen Nichtschlüsselattributen

31 Dritte Normalform Dritte Normalform Beispiel Beispiel. MNr Vname Nname Stkz Studium LvaNr Lva MNr LvaNr Datum Note

32 Dritte Normalform Dritte Normalform Beispiel Beispiel. MNr Vname Nname Stkz Studium LvaNr Lva MNr LvaNr Datum Note Die FD Stkz Studium erfüllt keine der Bedingungen zur 3NF..

33 Dritte Normalform Dritte Normalform Beispiel Beispiel. Zerlegung, die 3NF erfüllt: MNr Vname Nname Stkz Stkz Studium LvaNr Lva MNr LvaNr Datum Note

34 Dritte Normalform Synthesealgorithmus für 3NF Gegeben: Relation R, Menge F von FDs Wir wollen: verlustlose und abhängigkeitserhaltende Zerlegung R 1,..., R n, sodass jedes R i in 3NF ist Algorithmus: 1 Bestimme kanonische Überdeckung F c von F (siehe Unit 5). 2 Lege für jede FD α β in F c eine Relation R α := α β an (und bestimme entsprechende Menge von FDs F α ). 3 Wenn eine der Relationen R α einen Kandidatenschlüssel von R enthält, sind wir fertig. Ansonsten lege weitere Relation R κ für einen Kandidatenschlüssel κ von R an (mit F κ = ). 4 Lösche Relationen R α, die in anderen Relationen R α enthalten sind, d.h. R α R α.

35 Dritte Normalform Synthesealgorithmus Beispiel Betrachten folgende Tabelle mit Studenteninformationen: (Annahme: nur ein Studium pro Student) Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Funktionale Abhängigkeiten: MNr Vname, Nname, Stkz, Studium Stkz Studium LvaNr Lva MNr, LvaNr, Datum Note

36 Dritte Normalform Synthesealgorithmus Beispiel Betrachten folgende Tabelle mit Studenteninformationen: (Annahme: nur ein Studium pro Student) Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Kanonische funktionale Abhängigkeiten: MNr Vname, Nname, Stkz Stkz Studium LvaNr Lva MNr, LvaNr, Datum Note

37 Dritte Normalform Synthesealgorithmus Beispiel Betrachten folgende Tabelle mit Studenteninformationen: (Annahme: nur ein Studium pro Student) Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Tabellen: MNr, Vname, Nname, Stkz Stkz, Studium LvaNr, Lva MNr, LvaNr, Datum, Note

38 Dritte Normalform Synthesealgorithmus Beispiel Betrachten folgende Tabelle mit Studenteninformationen: (Annahme: nur ein Studium pro Student) Vname Nname MNr Stkz Studium LvaNr Lva Datum Note Tabellen: MNr, Vname, Nname, Stkz Stkz, Studium LvaNr, Lva MNr, LvaNr, Datum, Note Die letzte Tabelle enthält Kandidatenschlüssel der ursprünglichen Tabelle, also sind wir fertig.

39 Boyce-Codd Normal Form Outline 1 Organisatorisches 2 SQL 3 Überblick Datenbankdesign 4 Normalisierung Erste Normalform Zweite Normalform Dritte Normalform Boyce-Codd Normal Form Vierte Normalform

40 Boyce-Codd Normal Form Boyce-Codd Normalform Definition (BCNF) Eine Relation ist in BCNF, wenn sie in 1NF ist und für jede FD α β mindestens eine der folgenden eine der folgenden Bedingungen gilt: 1 β α, d.h. die FD α β ist trivial, 2 α ist ein Superschlüssel. Unterschied zu 3NF: β darf nicht mehr Teil eines Kandidatenschlüssels sein. Intuition: Wie für 3NF wollen wir für BCNF keine FDs zwischen Nichtschlüsselattributen haben (inkl. Attribute, die Teil eines Kandidatenschlüssels sind, aber nicht als Primärschlüssel verwendet werden).

41 Boyce-Codd Normal Form Boyce-Codd Normalform Beispiel Beispiel. MNr LvaNr Semester Semesterabk Datum Note WS 2015/16 W15 Die Relation zwischen Semester und Semesterabk ist 1:1, sodass { MNr, LvaNr, Semester, Datum } ein Kandidatenschlüssel ist. Wir haben FDs: {Semester} {Semesterabk} und {Semesterabk} {Semester} Weder Semster noch Semesterabk ist Superschlüssel, noch sind die FDs trivial. Tabelle ist nicht in BCNF

42 Boyce-Codd Normal Form Boyce-Codd Normalform Beispiel Lösung: neue Tabelle für Semester MNr LvaNr Semesterabk Datum Note Semesterabk Semester

43 Boyce-Codd Normal Form Dekompositionsalgorithmus für BCNF Gegeben: Wir wollen: Relation R, Menge F von FDs Zerlegung R 1,..., R n in BCNF Dekompositionsalgorithmus: Initialisiere Z := {R}; while (es gibt R i in Z, das nicht in BCNF) do 1 Finde FD α β in R i mit α β = und α R i. 2 Zerlege R i in R i1 := α β und R i2 := R i β. 3 Ersetze R i in Z durch R i1 und R i2, d.h. Z := (Z {R i }) {R i1, R i2 }.

44 Boyce-Codd Normal Form 3NF vs. BCNF Der Synthesealgorithmus garantiert Zerlegung, die verlustlos, abhängigkeitserhaltend und in 3NF ist. Der Dekompositionsalgorithmus garantiert Zerlegung, die verlustlos und in BCNF ist.

45 Boyce-Codd Normal Form 3NF vs. BCNF Der Synthesealgorithmus garantiert Zerlegung, die verlustlos, abhängigkeitserhaltend und in 3NF ist. Der Dekompositionsalgorithmus garantiert Zerlegung, die verlustlos und in BCNF ist. Unglücklicherweise gilt: In einigen Fällen ist eine BCNF Zerlegung nicht abhängigkeitserhaltend. In diesen Fällen gibt man sich mit 3NF zufrieden.

46 Vierte Normalform Outline 1 Organisatorisches 2 SQL 3 Überblick Datenbankdesign 4 Normalisierung Erste Normalform Zweite Normalform Dritte Normalform Boyce-Codd Normal Form Vierte Normalform

47 Vierte Normalform Vierte Normalform und mehrwertige Abhängigkeiten Beispiel: möchten gerne Sprach- und Sportkurse für Studierende in Tabelle speichern: MNr Sprachkurs Sportkurs Italienisch Schifahren Italienisch Fechten Italienisch Fußball Spanisch Schifahren Spanisch Fechten Spanisch Fußball Es ist offensichtlich keine gute Idee, zwei (oder mehr) N : M Relationen in einer Tabelle zu speichern.

48 Vierte Normalform Mehrwertige Abhängigkeiten Die Abhängigkeiten {MNr} {Sprachkurs} und {MNr} {Sportkurs} sind sogenannte mehrwertige Abhängigkeiten (MVDs). Idee: Bei FD α β bestimmt gegebener Wert für α eindeutig einen Wert für β. Bei MVD α β bestimmt gegebener Wert für α eindeutig eine Menge von Werten für β. Definition (MVD) β ist mehrwertig abhängig von α (Notation: α β), wenn es für alle Tupel mit identischen α-werten mehrere Tupel mit vertauschten β-werten gibt. (MVDs sind eine Verallgemeinerung von FDs.)

49 Vierte Normalform Mehrwertige Abhängigkeiten Definition (MVD) β ist mehrwertig abhängig von α (Notation: α β), wenn es für alle Tupel mit identischen α-werten mehrere Tupel mit vertauschten β-werten gibt. Im Beispiel: Wenn es Zeilen , Italienisch, Fechten und , Spanisch, Fußball gibt, dann auch Zeilen , Spanisch, Fechten und , Italienisch, Fußball.

50 Vierte Normalform Vierte Normalform Idee: Keine Tabelle enthält mehr als eine mehrwertige Relation. Definition (4NF) Eine Relation R ist in 4NF, wenn sie in 1NF ist und für jede MVD α β mindestens eine der folgenden Bedingungen gilt: 1 die MVD α β ist trivial, d.h. entweder β α oder β = R α, 2 α ist ein Superschlüssel von R. Anmerkung: Jede Relation in 4NF ist auch in BCNF.

51 Vierte Normalform Vierte Normalform Beispiel MNr Sprachkurs Sportkurs Italienisch Schifahren Italienisch Fechten Italienisch Fußball Spanisch Schifahren Spanisch Fechten Spanisch Fußball MVDs: {MNr} {Sprachkurs} und {MNr} {Sportkurs} Tabelle nicht in 4NF

52 Vierte Normalform Vierte Normalform Beispiel Beispiel. MNr Sprachkurs Italienisch Spanisch MNr Sportkurs Schifahren Fechten Fußball

53 Vierte Normalform Verallgemeinerter Dekompositionsalgorithmus für 4NF Gegeben: Relation R, Menge F von MVDs Wir wollen: Zerlegung R 1,..., R n in 4NF Verallgemeinerter Dekompositionsalgorithmus: Initialisiere Z := {R}; while (es gibt R i in Z, das nicht in 4NF) do 1 Finde MVD α β in R i mit α β = und α R i. 2 Zerlege R i in R i1 := α β und R i2 := R i β. 3 Ersetze R i in Z durch R i1 und R i2, d.h. Z := (Z {R i }) {R i1, R i2 }. (Nachdem jede Relation in 4NF auch in BCNF ist, gibt es Fälle, wo eine 4NF Zerlegung nicht abhängigkeitserhaltend ist.)

54 Vierte Normalform Weiteres Beispiel Datenbank Personalabteilung: pers_no name lohn abt chef projekt kurs FDs: {pers_no} {name, lohn, abt, chef} {abt} {chef} {chef} {abt} MVDs: {pers_no} {projekt} {pers_no} {kurs}

55 Vierte Normalform Weiteres Beispiel Wenden Dekompositionsalgorithmus an: FD {pers_no} {name, lohn, abt, chef} gibt Zerlegung pers_no name lohn abt chef pers_no projekt kurs

56 Vierte Normalform Weiteres Beispiel Wenden Dekompositionsalgorithmus an: FD {abt} {chef} gibt Zerlegung pers_no name lohn abt abt chef pers_no projekt kurs

57 Vierte Normalform Weiteres Beispiel Wenden Dekompositionsalgorithmus an: MVDs {pers_no} {projekt} und {pers_no} {kurs} geben Zerlegung pers_no name lohn abt abt chef pers_no projekt pers_no kurs

58 Vierte Normalform Weiteres Beispiel Wenden Dekompositionsalgorithmus an: MVDs {pers_no} {projekt} und {pers_no} {kurs} geben Zerlegung pers_no name lohn abt abt chef pers_no projekt pers_no kurs ist in 4NF

59 Vierte Normalform Weiteres Beispiel Wenn mehr Informationen zu Projekten und Kursen gespeichert werden sollen: pers_no name lohn abt abt chef pers_no projekt_nr pers_no kurs_nr projekt_nr name... kurs_nr name...

Datenbanken 6: Normalisierung

Datenbanken 6: Normalisierung Datenbanken 6: Normalisierung 27 III 2017 Outline 1 SQL 2 Überblick Datenbankdesign 3 Anomalien 4 Datenbank Normalisierung Zerlegung von Relationen 5 Normalisierung Erste Normalform Zweite Normalform Dritte

Mehr

Datenbanken Unit 7: Normalisierung ctd.

Datenbanken Unit 7: Normalisierung ctd. Datenbanken Unit 7: Normalisierung ctd. 4. IV. 2017 Outline 1 Organisatorisches 2 SQL 3 Normalisierung ctd Wiederholung 1NF bis 3NF/BCNF Organisatorisches Zweiter Zwischentest in der ersten UE nach den

Mehr

Datenbanken Unit 5: Funktionale Abhängigkeit

Datenbanken Unit 5: Funktionale Abhängigkeit Datenbanken Unit 5: Funktionale Abhängigkeit 19 IV 2016 Outline 1 Organisatorisches 2 SQL 3 Funktionale Abhängigkeit 4 Anomalien 5 Datenbank Normalisierung Zerlegung von Relationen Organisatorisches Heute

Mehr

Relationale Entwurfstheorie (Teil 2)

Relationale Entwurfstheorie (Teil 2) Web Science & Technologies University of Koblenz Landau, Germany Grundlagen der Datenbanken (Teil 2) Dr. Gerd Gröner Wintersemester 2013/14 Gliederung Funktionale Abhängigkeiten Dekomposition der Relationenschemata:

Mehr

Übung 9. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017)

Übung 9. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017) Übung 9 Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017) Dennis Fischer [email protected] http://home.in.tum.de/fischerd/ Technische Universität München Fakultät für Informatik

Mehr

8. Tutorübung zu Grundlagen: Datenbanken

8. Tutorübung zu Grundlagen: Datenbanken 8. Tutorübung zu Grundlagen: Datenbanken Chaoran Chen [email protected] 01.12-07.12.2014 Relationale Entwurfstheorie Normalformen 1. Normalform 2. Normalform 3. Normalform Boyce-Codd Normalform (BCNF)

Mehr

Datenbanken Unit 11: Erstellen u. Ändern von Datenbanken und Tabellen Verbindung von Java auf Datenbanken

Datenbanken Unit 11: Erstellen u. Ändern von Datenbanken und Tabellen Verbindung von Java auf Datenbanken Datenbanken Unit 11: Erstellen u Ändern von Datenbanken und Tabellen Verbindung von Java auf Datenbanken 13 VI 2017 Organisatorisches morgen Abschlusstest UE (Gruppe 1: 14:45 16:00, Gruppe 2: 16:00 17:15

Mehr

3. Normalform. Redundanz: Land mehrfach gespeichert Anomalien?

3. Normalform. Redundanz: Land mehrfach gespeichert Anomalien? 3. Normalform Motivation: Man möchte zusätzlich verhindern, dass Attribute von nicht-primen Attributen funktional abhängig sind. Beispiel: LieferAdr (LNr, LName, LStadt, LLand) 001 Huber München Deutschland

Mehr

Datenbanken Unit 3: Das relationale Modell

Datenbanken Unit 3: Das relationale Modell Datenbanken Unit 3: Das relationale Modell 7. III. 2017 Outline 1 SQL 2 Das ER Modell Zusammenfassung 3 Das Relationale Modell Termin zweiter Zwischentest UE-Tests (Thema: SQL) zweiter Zwischentest findet

Mehr

Zerlegung einer Relation

Zerlegung einer Relation Normalformen Normalisierung Normalformen definieren Qualitätskriterien (Vermeidung der Inkonsistenzen) Redundanz ist oft die Ursache von Schemata Probleme (keine FDs keine Redundanz) Normalisierung: Jede

Mehr

Datenbanken Unit 3: Das relationale Modell

Datenbanken Unit 3: Das relationale Modell Datenbanken Unit 3: Das relationale Modell 8. III. 2016 Outline 1 Das ER Modell Zusammenfassung 2 Das Relationale Modell 3 SQL Organisatorisches Wissensüberprüfung: heute zwei Aufgaben statt nur einer

Mehr

Rückblick: Relationales Modell

Rückblick: Relationales Modell Rückblick: Relationales Modell Relationales Modell als vorherrschendes Datenmodell Relationen (Tabellen) besitzen Attribute (Spalten) mit Wertebereichen und beinhalten Tupel (Zeilen) Umsetzung eines konzeptuellen

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 10 Übung zur Vorlesung Grundlagen: Datenbanken im WS16/17 Harald Lang, Linnea Passing ([email protected])

Mehr

Grundlagen: Datenbanken

Grundlagen: Datenbanken Grundlagen: Datenbanken 1. Zentralübung Harald Lang FAQs Ist der Prüfungtermin schon bekannt? Termin: Mi. 18.02.2015, 08:00 Uhr FAQs Gilt der Bonus auch für die Nachholklausur? Ja. Selbst dann, wenn die

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann Blatt Nr. 7 Hausaufgabe 1 Übung zur Vorlesung Grundlagen: Datenbanken im WS14/15 Harald Lang ([email protected])

Mehr

5. Relationale Entwurfstheorie

5. Relationale Entwurfstheorie 5 Relationale Entwurfstheorie Motivation Konzeptuelles Modell (ERM) kann in ein relationales Schema mit möglichst wenigen Relationen übersetzt werden (vgl Kapitel 4) Welche Eigenschaften hat ein gutes

Mehr

Aufgabe 7. Sei die Schema R(A, B, C, D, E) mit folgenden fkt. Abh.:

Aufgabe 7. Sei die Schema R(A, B, C, D, E) mit folgenden fkt. Abh.: Übungen Aufgabe 6 In der folgenden Relation speichern wir die Betreuer für jeden Studenten. Ein Student kann aber gleichzeitig mehrere Hauptfächer studieren (um am Ende mehrere Diplomen zu kriegen, z.b.

Mehr

Normalisierung II. Ziele

Normalisierung II. Ziele Normalisierung II Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Verlustlosigkeit Abhängigkeitsbewahrung Algo: Dekomposition Algo: Basis Algo: Synthese Lehr- und Forschungseinheit

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 9 Hausaufgabe 1 Übung zur Vorlesung Grundlagen: Datenbanken im WS13/14 Henrik Mühe ([email protected])

Mehr

Kapitel DB:VII (Fortsetzung)

Kapitel DB:VII (Fortsetzung) Kapitel DB:VII (Fortsetzung) VII. Entwurfstheorie relationaler Datenbanken Informelle Entwurfskriterien für Relationenschemata Funktionale Abhängigkeiten Normalformen Dekompositionseigenschaften von Relationen

Mehr

Rückblick: Relationale Entwurfstheorie

Rückblick: Relationale Entwurfstheorie Rückblick: Relationale Entwurfstheorie Redundanzen führen zu Anomalien beim Einfügen, Löschen und Ändern Gute Relationenschemata vermeiden Redundanzen und damit Anomalien Funktionale Abhängigkeiten zwischen

Mehr

Datenbanken Unit 2: Das ER-Modell

Datenbanken Unit 2: Das ER-Modell Datenbanken Unit 2: Das ER-Modell 28. II. 2017 Outline 1 Organisatorisches 2 SQL 3 Das Entity-Relationship Modell Grundbegriffe Termin erster Zwischentest UE-Tests (Thema: SQL) erster Zwischentests am

Mehr

Informationssysteme. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Sommersemester

Informationssysteme. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Sommersemester Informationssysteme Sommersemester 2016 Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern [email protected] Normalformen Wiederholung: Normalisierung von Relationen Um Qualitätsprobleme im ursprünglichen

Mehr

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 18. Juni 2007

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 18. Juni 2007 7. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 18. Juni 2007 Aufgabe 1 Geben Sie jeweils die höchste Normalform (in

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 07 Übung zur Vorlesung Grundlagen: Datenbanken im WS15/16 Harald Lang, Linnea Passing ([email protected])

Mehr

2. Übungsblatt 3.0 VU Datenmodellierung

2. Übungsblatt 3.0 VU Datenmodellierung 2. Übungsblatt 3.0 VU Datenmodellierung 13. November 2013 Allgemeines In diesem Übungsteil sollten Sie Aufgabenstellungen aus den Bereich SQL und Normalformentheorie bearbeiten. Lösen Sie die Beispiele

Mehr

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. PRÜFUNG AUS DATENMODELLIERUNG (184.685) GRUPPE A MUSTERLÖSUNG 06.05.2014 Matrikelnr.

Mehr

Übung Datenbanksysteme Normalformen

Übung Datenbanksysteme Normalformen Übung Datenbanksysteme Normalformen 19.1.2004 Final-Klausur Termin: Freitag, 13. Februar 2004 Uhrzeit: ab 16.15 Uhr Ort: Hörsaal PH HS 1 (PH 2501) Funktionale Abhängigkeiten Ab jetzt wieder recht theoretisch

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann Blatt Nr. 8 Übung zur Vorlesung Grundlagen: Datenbanken im WS14/15 Harald Lang ([email protected]) http://www-db.in.tum.de/teaching/ws1415/grundlagen/

Mehr

Kapitel 6 Relationale Entwurfstheorie. Funktionale Abhängigkeiten Normalformen Normalisierung durch Dekomposition

Kapitel 6 Relationale Entwurfstheorie. Funktionale Abhängigkeiten Normalformen Normalisierung durch Dekomposition Kapitel 6 Relationale Entwurfstheorie Funktionale Abhängigkeiten Normalformen Normalisierung durch Dekomposition Ziele der relationalen Entwurfstheorie Bewertung der Qualität eines Relationenschemas Redundanz

Mehr

Datenbanken und SQL. Kapitel 3. Datenbankdesign Teil 1: Normalformen. Edwin Schicker: Datenbanken und SQL

Datenbanken und SQL. Kapitel 3. Datenbankdesign Teil 1: Normalformen. Edwin Schicker: Datenbanken und SQL Datenbanken und SQL Kapitel 3 Datenbankdesign Teil 1: Normalformen Datenbankdesign Normalformen 1. Normalform Funktionale Abhängigkeit 2. Normalform 3. Normalform nach Boyce und Codd 3. Normalform nach

Mehr

Datenbanken (Übung 12)

Datenbanken (Übung 12) Datenbanken (Übung 12) Prof. Dr.-Ing. Norbert Fuhr Dipl.-Inform. Thomas Beckers ([email protected]) Universität Duisburg-Essen Fachgebiet Informationssysteme 1. 2. Februar 2012 Dipl.-Inform. Thomas

Mehr

Kapitel 11: Relationale Entwurfstheorie

Kapitel 11: Relationale Entwurfstheorie Kapitel 11: Relationale Entwurfstheorie Funktionale Abhängigkeiten α β β ist funktional abhängig von α r, t R : r.α = t.α r.β = t.β R A B C D a 4 b 2 c 4 d 3 a 1 b 1 c 1 d 1 a 1 b 1 c 1 d 2 a 2 b 2 c 3

Mehr

Themenübersicht Relationale Entwurfstheorie. Inhalt

Themenübersicht Relationale Entwurfstheorie. Inhalt Themenübersicht Relationale Entwurfstheorie Datenbanken Relationale Entwurfstheorie Nikolaus Augsten [email protected] FB Computerwissenschaften Universität Salzburg Richtlinien für den relationalen

Mehr

Grundlagen: Datenbanken

Grundlagen: Datenbanken Grundlagen: Datenbanken 3. Zentralübung / Fragestunde Linnea Passing Harald Lang [email protected] Diese Folien finden Sie online. Die Mitschrift stellen wir im Anschluss online. Agenda Hinweise zur Klausur

Mehr

Kapitel 7: Normalformen

Kapitel 7: Normalformen Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2013/2014 Vorlesung: Prof. Dr. Christian Böhm Übungen:

Mehr

2. Übungsblatt 3.0 VU Datenmodellierung

2. Übungsblatt 3.0 VU Datenmodellierung 2. Übungsblatt 3.0 VU Datenmodellierung 8. Mai 2017 Allgemeines In diesem Übungsteil sollen Sie Aufgabenstellungen aus den Bereichen SQL und Normalformentheorie bearbeiten. Lösen Sie die Beispiele eigenständig,

Mehr

Kapitel 7: Normalformen

Kapitel 7: Normalformen Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2008/2009 Vorlesung: Prof. Dr. Christian Böhm Übungen:

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 11 Hausaufgabe 1 Übung zur Vorlesung Grundlagen: Datenbanken im WS13/14 Henrik Mühe ([email protected])

Mehr

Kapitel 7: Normalformen

Kapitel 7: Normalformen Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2005/2006 Vorlesung: Dr. Matthias Schubert Übungen: Elke

Mehr

Datenmanagement Übung 5

Datenmanagement Übung 5 Datenmanagement Übung 5 Normalisierung (1.-3. NF) AUFGABE 1 1 Definitionen 1. NF Eine Relation befindet sich in 1. NF, wenn jeder Attributwert atomar ist und alle Nicht-Schlüsselattribute funktional vom

Mehr

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird. Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,

Mehr

Gruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Gruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. Gruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. PRÜFUNG AUS DATENMODELLIERUNG (184.685) GRUPPE B 22.06.2012 Matrikelnr. Familienname

Mehr

Datenbanken 1 Sommersemester 2014/

Datenbanken 1 Sommersemester 2014/ Fachbereich für Computerwissenschaften Prof. Dr. Nikolaus Augsten Jakob-Haringer-Str. 2 5020 Salzburg, Austria Telefon: +43 662 8044 6347 E-Mail: [email protected] Datenbanken 1 Sommersemester

Mehr

Wir haben folgende Ausprägung der Relation Studenten:

Wir haben folgende Ausprägung der Relation Studenten: Übungen Aufgabe Wir haben folgende Ausprägung der Relation Studenten: SID Name Email Age Note 2833 Jones [email protected] 9 9 2877 Smith [email protected] 2 8 2976 Jones [email protected] 2

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 08 Übung zur Vorlesung Grundlagen: Datenbanken im WS15/16 Harald Lang, Linnea Passing ([email protected])

Mehr

2. Übungsblatt 3.0 VU Datenmodellierung

2. Übungsblatt 3.0 VU Datenmodellierung 2. Übungsblatt 3.0 VU Datenmodellierung 3. Dezember 2014 Allgemeines In diesem Übungsteil sollten Sie Aufgabenstellungen aus den Bereich SQL und Normalformentheorie bearbeiten. Lösen Sie die Beispiele

Mehr

4. Normalformen. Qualitätsanforderungen an Tabellen. Klassische Normalformen (1,. 2., 3.) Spezielle Normalformen

4. Normalformen. Qualitätsanforderungen an Tabellen. Klassische Normalformen (1,. 2., 3.) Spezielle Normalformen 4. Normalformen Qualitätsanforderungen an Tabellen Klassische Normalformen (1,. 2., 3.) Spezielle Normalformen 79 Normalisierungsgründe Verständlicheres Datenmodell für Anwender und Entwickler Vermeidung

Mehr

S.Müllenbach Datenbanken Informationsanalyse Normalformen- 1. Kurse. Name TNR ...

S.Müllenbach Datenbanken Informationsanalyse Normalformen- 1. Kurse. Name TNR ... S.Müllenbach Datenbanken Informationsanalyse Normalformen 1 Datenbanken Normalformentheorie Anomalien e EinfügeAnomalie Es soll ein neuer eingetragen werden : =, = V, ++ preis = ++ => Dies geht jedoch

Mehr

Datenbanksysteme und Datenmodellierung

Datenbanksysteme und Datenmodellierung Datenbanksysteme und Datenmodellierung Begleitende Übung zur Vorlesung von Prof. Dr. Uwe H. Suhl Normalisierung (2) und Weihnachts-Special (Termin #08: 15.12.2004) Wintersemester 2004 / 2005 Freie Universität

Mehr

Datenbankensysteme Aufgabenblatt 2

Datenbankensysteme Aufgabenblatt 2 Datenbanken Seite 1 von 1 Aufgabe 1: Datenbankensysteme Aufgabenblatt 2 Es folgt das ER-Modell unter Berücksichtigung der 1. 3. NF: Nummer Semester Matrikel n 1 Matrikel Anmeldung Veranstaltung cn 1 für

Mehr

Relationale Datenbanken

Relationale Datenbanken Ramon A. Mata-Toledo, Pauline K. Cushman Relationale Datenbanken Schaum's Repetitorien Übersetzung aus dem Amerikanischen von G&U Technische Dokumentation GmbH Z Die Autoren 9 Vorwort 9 1 Ein Überblick

Mehr

Vorlesung Datenbanktheorie. Church-Rosser-Eigenschaft der Verfolgungsjagd. Berechnung von chase(t, t, Σ) Vorlesung vom Mittwoch, 05.

Vorlesung Datenbanktheorie. Church-Rosser-Eigenschaft der Verfolgungsjagd. Berechnung von chase(t, t, Σ) Vorlesung vom Mittwoch, 05. Vorlesung Datenbanktheorie Nicole Schweikardt Humboldt-Universität zu Berlin Sommersemester 2006 Vorlesung vom Mittwoch, 05. Juli 2006 Letzte Vorlesung: Kurze Bemerkungen zum Armstrong-Kalkül The Chase:

Mehr

Lösungen der Übungsaufgaben von Kapitel 12

Lösungen der Übungsaufgaben von Kapitel 12 Lösungen der Übungsaufgaben von Kapitel 12 1. Betrachten Sie wieder unsere Telefondatenbank aus dem Abschnitt 5.6 des 5. Kapitels. Ich modelliere unsere Tabelle PERSONTELEFON jetzt folgendermaßen: Hier

Mehr

Introduction to Data and Knowledge Engineering

Introduction to Data and Knowledge Engineering Introduction to Data and Knowledge Engineering Sommersemester 2015 Robert Rehner Tutorium 5: Syntheseverfahren Lösungsvorschlag Aufgabe 5.1: Verbundtreue Angenommen, Sie haben eine Relation R = ABCDEF

Mehr