4 Relationentheorie - Abhängigkeiten, Normalformen, Data Design

Größe: px
Ab Seite anzeigen:

Download "4 Relationentheorie - Abhängigkeiten, Normalformen, Data Design"

Transkript

1 4 Relationentheorie - Abhängigkeiten, Normalformen, Data Design 4.1 Motivation für den systematischen Entwurf von Relationen Ziele/Probleme beim Aufbau relationaler Datenbanken Schlussfolgerungen Semantische Integritätsbedingungen Funktionale Abhängigkeiten Definition und Eigenschaften Normalformen (2NF, 3NF, BCNF) Data Design Erzeugung von 3NF-Relationen

2 4.1 Motivation für den systematischen Entwurf von Relationen Ziele/Probleme beim Aufbau relationaler Datenbanken (1/4) Ziel: Datenbank sollte zu jedem Zeitpunkt ein korrektes Abbild der realen Welt darstellen! Problem: Durch Analyse der Realwelt gegeben: entw.: - Objekte/Beziehungen mit Attributen oder: - oder aber nur: Menge von Attributen Frage: Wie fasst man Attribute zu Relationen zusammen, so dass Realwelt ausreichend gut dargestellt ist, d.h. Datenbank korrekt ist, Manipulationen mit den Daten möglich sind (bei Aufrechterhaltung dieser Korrektheit). 2

3 4.1.1 Ziele/Probleme beim Aufbau relationaler Datenbanken (2/4) In Kapitel 1 wurden verschiedene Probleme gezeigt, die entstehen können bei der Zusammenfassung von Attributen zu einer Relation (vgl ) insertion / deletion / update anomaly Redundanz / unvollständige Tupel Zerlegung einer Relation in mehrere Relationen (vgl. 1.5) evtl. Informationsverlust Relationentheorie ermöglicht eine systematische Vorgehensweise zur Lösung dieser Probleme. Data Design: Bildung korrekter Relationenschemata entsprechend den Regeln der Relationentheorie. 3

4 4.1.1 Ziele/Probleme beim Aufbau relationaler Datenbanken (3/4) Beispiel 4-2: Lieferbeziehung Projekte (P) - Bauteile (B) - Lieferanten (L) Ergebnis der Systemanalyse: (a) jeder L - nur 1 B (b) 1 B - mehrere L möglich (c) 1 B für best. P - nur 1 L (d) 1P - mehrere L möglich a) Relation lief: (P, B, L?); Beispiel-Tabelle: lief P B L p 1 x p 2 y q 1 z r 2 y p 3 u mögliche Schlüssel: {P, B}; {P, L} Aktivitäten: lösche (q,1) was geschieht mit (1,z)? P n L 1 B 1 4

5 4.1.1 Ziele/Probleme beim Aufbau relationaler Datenbanken (4/4) b) Alternative: 3 neue Relationen lief-p:(p, L), lief-b:(b, L), bau:(p, B) lief-p P p p q r p p L x y z y u z lief-b B L 1 x 2 y 1 z 3 u hier möglich: einfüge(p,z) in lief-p bau P B p 1 p 2 q 1 r 2 p 3! danach: frühere Information (p, 1, x) (und nur x für p-1) verloren, da jetzt (p, 1, z) auch denkbar! d.h.: Eigenschaft (c) (Zusammenhang p-b-l) nicht mehr darstellbar: Informationsverlust. Die Zerlegung als solche ist verlustfrei, aber sie ist nicht fa-erhaltend (s.u.). Relationentheorie AIFB

6 4.1.2 Schlussfolgerung (1/2) Vermeidung der dargestellten Probleme Anwendung und Einsatz der geeigneten Kriterien und Methoden, damit möglich: geeigneter Aufbau von Relationen, bzw. geeignete Zerlegung einer Relation in mehrere kleinere Relationen d.h. über 1NF hinausgehende weitere Normalisierung (zu 2NF / 3NF / BCNF / 4NF / ); grundlegende Konzepte dafür: funktionale volle transitive mehrwertige Abhängigkeiten zwischen Attributen Ausgangspunkt: (beispielweise) ER-Modell; darauf Anwendung der Relationentheorie und Normalisierungslehre 6

7 4.1.2 Schlussfolgerung (2/2) Ziele des systematischen Datenbankentwurfs bisher diskutierte Ziele: Vermeidung unerwünschter Abhängigkeiten bei insertion/deletion/update Gewährleistung der Korrektheit der Datenbank (zu jedem Zeitpunkt) Erhöhung der Aussagekraft des Modells für den Benutzer (Trennung der unterschiedlichen Konzepte der realen Welt) weitere Ziele: Verringerung der Notwendigkeit der Umstrukturierung von Relationen bei Einführung neuer Typen von Daten ( Verlängerung der Lebensdauer von Anwendungsprogrammen) Verringerung der Abhängigkeit der Relationen von Anfragehäufigkeiten und Anfragestrukturen u.ä. (letztere mit der Zeit veränderlich!) 7

8 4 Relationentheorie - Abhängigkeiten, Normalformen, Data Design 4.1 Motivation für den systematischen Entwurf von Relationen Semantische Integritätsbedingungen Funktionale Abhängigkeiten Definition und Eigenschaften Normalformen (2NF, 3NF, BCNF) Data Design Erzeugung von 3NF-Relationen

9 4.2 Semantische Integritätsbedingungen (1 7) Eine semantische Integritätsbedingung (sib) σ über der Attributmenge A macht eine Aussage über Teilmengen X dom (A) X dom (A): entweder X erfüllt σ: σ(x) (wir sagen auch σ trifft zu / gilt für X ; i.z. σ(x)) oder nicht: σ(x) 9

10 4.2 Semantische Integritätsbedingungen (2 7) Relationsschema: r : (A Σ ); mögliche Werte zum Zeitpunkt t: r t ( val(r)) Σ = Menge von sib s über A in der Bedeutung: jedes r t erfüllt alle σ Σ d.h. σ (r t ) für alle σ Σ, kurz auch: Σ (r t ) Anmerkungen: Kurzschreibweise für r : (A ø) : r : (A) σ, σ spez. Integritätsbedingungen (allg. Aussagen!) σ(r) : ( X val(r): σ(x)) σ σ : (σ(r) σ (r)) ( aus σ folgt σ ) 10

11 4.2 Semantische Integritätsbedingungen (3 7) Beispiel zu : betrachtete Relation ang-pro. Es sei für Angestellte a: s(a) = Summe von Proz-Arbzeit des Angestellten a über alle Projekte p, an denen a mitarbeitet. sib σ 1 : s(a) <= 100 für alle a sib σ 2 : s(a) = 100 für alle a Dann gilt für ang-pro: σ 2 σ 1 d.h. X val(ang-pro): σ 2 (X) σ 1 (X) 11

12 4.2 Semantische Integritätsbedingungen (4 7) Wunsch bzw. Vorstellung: E:<A> wird vollständig modelliert durch r: (A Σ ). d.h. wir nehmen an: Jedes X dom (A) mit Σ (X) stellt einen gültigen Realweltzustand (d.h. E t :X ) dar! Zwei Mengen Σ, Σ sind äquivalent (Σ ~ Σ ), wenn sie - in obigem Sinn - dieselbe Realwelt modellieren (d.h. dieselben gültigen Realweltzustände X dom (A) ergeben). 12

13 4.2 Semantische Integritätsbedingungen (5 7) Wir beschränken uns im folgenden auf einfache sib s: Angabe von Schlüsseln für Relationen, bzw. allgemeiner Angabe sog. funktionaler Abhängigkeiten 13

14 4.2 Semantische Integritätsbedingungen (6 7) Beispiel für solche sib s: Personal Name a PersNr b StOrt c Ubereich d Abt e GebNr f Gehalt g Frits 17 Aholming Electro F&E Frans 9133 Aholming Electro Contr Lubbe 321 Aholming Electro Vertr Einzian 17 München Mechanik F&E Truhel 54 Karben Kfz F&E Jöndhard 739 Karben Kfz F&E Frits 17 Fürth Mechanik Contr U= {a,b,c,d,e,f,g} bc = Schlüssel c: jeweils nur 1 d e: 1 f (pro c) 14

15 4.2 Semantische Integritätsbedingungen (7 7) Standort Standort a PLZ b Straße c Koord d Leiter e PersBudget f Aholming Bärengasse N: Beutel E München Coddweg N: Schmitz E Karben Nusshof N: Dieler E Fürth Maierring N: 10.61E Gabler U = {a,b,c,d,e,f} Schlüssel : a (oder ac?) 15

16 4 Relationentheorie - Abhängigkeiten, Normalformen, Data Design 4.1 Motivation für den systematischen Entwurf von Relationen Semantische Integritätsbedingungen Funktionale Abhängigkeiten Definition und Eigenschaften Definition und Beispiele Eigenschaften funktionaler Abhängigkeiten Die abgeschlossene Hülle F Armstrong-Regeln/Axiome Zur Berechnung von F Schlüssel / Schlüsselattribute / Nichtschlüsselattribute Normalformen (2NF, 3NF, BCNF) Data Design Erzeugung von 3NF-Relationen

17 4.3 Funktionale Abhängigkeiten Definition und Eigenschaften Definition und Beispiele (1 12) U Attributmenge; A, B, U r: (U F) Relation über U Wir betrachten spezielle sib s über U Form: A B (A, B U) Bezeichnung: funktionale Abhängigkeit (fa) ( B ist von A funktional abhängig oder A determiniert B ) Bedeutung für X dom(u): A B (X) : x, y X: (x.a = y.a x.b = y.b). d.h.: Stimmen 2 Tupel aus X in allen A-Werten überein, so stimmen sie auch in allen B-Werten überein. 17

18 4.3.1 Definition und Beispiele (2 12) Beispiel für solche sib s (vgl. Bsp. aus 4.3): Personal Name a PersNr b StOrt c Ubereich d Abt e GebNr f Gehalt g Frits 17 Aholming Electro F&E Frans 9133 Aholming Electro Contr Lubbe 321 Aholming Electro Vertr Einzian 17 München Mechanik F&E Truhel 54 Karben Kfz F&E Jöndhard 739 Karben Kfz F&E Frits 17 Fürth Mechanik Contr U= {a,b,c,d,e,f,g} Andere Schreibweise: Es gilt auch (z.b): bc = Schlüssel bc U, b U, c U a a c: jeweils nur 1 d e: 1 f (pro c) c d ec f ac ac abc a 18

19 4.3.1 Definition und Beispiele (3 12) Standort Standort a PLZ b Straße c Koord d Leiter e PersBudget f Aholming Bärengasse N: 12.59E München Coddweg N: 11.38E Karben Nusshof N: 08.71E Fürth Maierring N: U = {a,b,c,d,e,f} Schlüssel : a (oder ac?) a U 10.61E ac U, a U, c U Beutel Schmitz Dieler Gabler

20 4.3.1 Definition und Beispiele (4 12) Bezeichnung: Φ (U) ::= { A B A, B U } Beispiel: d.h.: U = {a,b}; Teilmengen:, {a}, {b}, {ab}, (wir schreiben:, a, b, ab) Φ (U) = {, a, b, ab, a, a a, a b, a ab, b, b a, b b, b ab, ab, ab a, ab b, ab ab} Ist f Φ (U), so ist f eine fa über U und hat die Form A B ( A, B geeignet U) (d.h. f = A B). 20

21 4.3.1 Definition und Beispiele (5 12) Betrachte r : (U A B); dann: A B (r) Wir sagen: B ist funktional abhängig von A (in r) A determiniert B (in r) A ist Determinante (von B) (in r) A bestimmt B (in r) A-Wert impliziert B-Wert : gilt zu jedem Zeitpunkt bedeutet nur dass, nicht wie! Wir schreiben: A B(r), falls nicht A B(r) A B(r): Es kann r t = X geben mit A B(X)! 21

22 4.3.1 Definition und Beispiele (6 12) Beispiel 4-3: Datensammlung über Angestellte (u. ihre Projekte) : Relation angest Werte/ Eigenschaften Personenspezifische Attribute: Angestelltennummer (ANr), Name, Beruf, Wohnort (W-Ort), Gehalt Zugehörige Abteilung: Abteilungsnummer (Abt#), Abteilungsleiter (AbtL) Arbeitsplatz: Gebäude (Geb#), zugehör. Hausmeister (HM) 22

23 4.3.1 Definition und Beispiele (7 12) Beispiel 4-3 (Forts.): Regelungen im Unternehmen: (i) Abteilungen sind immer geschlossen in einem Gebäude untergebracht. (ii) Jedes Gebäude hat (nur) einen Hausmeister. Projekte, an denen Angest. mitarbeitet: Projektnummer (PNr), Projektname (PName), entsprechende prozentuale Arbeitszeit (%), (projektbezogene) Telefonnummer (TelNr) 23

24 4.3.1 Definition und Beispiele (8 12) Beispiel 4-3 (Forts.): Konzeptuelles Modell: Angest <Ausreichend? z.b.: Abt? Gebäude?> Σ: { ANr Name Beruf Abt# W-Ort Gehalt Abt# AbtL Geb# Geb# HM PNr PName ANr, PNr % TelNr } n % m TelNr Projekt angest: ( ANr, Name, Beruf, W-Ort, Gehalt, Abt#, AbtL, Geb#, HM, PNr, PName, %, TelNr Σ) 24

25 4.3.1 Definition und Beispiele (9 12) Beispiel 4-4 (siehe Beispiel 4-2): LIEF: (P, B, L PB L, L B) P n 1 B Allgemein: PS beliebiges Attribut (jede Relation) L 1 25

26 4.3.1 Definition und Beispiele (10 12) wichtige Anmerkung: in r: (U F) gilt: Zwischen 2 Attributmengen A, B U kann es nur eine fa A B geben! gewisser Unterschied zu (1:n)-Beziehungen zwischen Entity-Typen im E-R-Modell; gewisse Schwierigkeiten, wenn dieselben Attributnamen in unterschiedlichen Relationen mit unterschiedlicher Bedeutung vorkommen (vgl. das folgende Beispiel) 26

27 4.3.1 Definition und Beispiele (11 12) Beispiel: Kunde: K#, Name, Anschrift,... : K# Anschrift? Kunde F : Firmenanschrift L : Lieferanschrift F 1 1 L Behelf für Relation Kunde: Verwendung der Rollennamen F-Anschrift, L-Anschrift. 1 1 Anschrift 27

28 4.3.1 Definition und Beispiele (12 12) Darstellung von (kleinen) Mengen von fa s im sog. Abhängigkeitsgraphen. Beispiel 4-5: a, b, c, d, e, f, g, h, i, j seien Attribute F={a b, cde f, g hij, j a} Φ (a, b, c, d, e, f, g, h, i, j) g lief:(pbl PB L, L B) Schlüssel: PB,PL; NSA: h i j a b c d e P B f L 28

29 4.3.2 Eigenschaften funktionaler Abhängigkeiten (1 6) Lemma 4.1: (Regeln für bzw. (r) ) Vor.: r: (U F), F Φ(U); A, B, C, D U Dann gelten die folgenden Eigenschaften (1) B A A B (r) (Reflexivität/Projektivität) bzw. B A A B ( insb. gilt immer: A A (r)) (2) A B AC BC (Erweiterungsregel) (3) A B, B C A C (Transitivität) (4) A B, A C A BC (Vereinigungsregel) (5) A B, BC D AC D (Pseudotransitivität) (6) A B, C B A C (Zerlegungsregel) Anderer Beweis von Eigenschaften (4)-(6) 29

30 4.3.3 Die abgeschlossene Hülle F + (1 5) r: (U F), F Φ(U): mit F gelten in r weitere fa s ( automatisch )! Φ(U) F gilt alles in r: fa-menge F + kann r auch als r: (U F ) aufgefasst werden? (F ~ F gemäss Lemma 4.1?) Frage: Wann sind zwei Mengen von fa s äquivalent? Gdw. F + = F +! F 35

31 4.3.3 Die abgeschlossene Hülle F + (2 5) Definition: Zu r: (U F), F Φ(U) ist F + ::= Menge aller fa s, die mit F in r gelten, die abgeschlossene Hülle von F. andere/formale Definitionsmöglichkeiten (bzw. Umformulierungen): F + = {f Φ(U) X dom(u): F(X) f(x)} dafür auch: F f; f wird von F erzeugt = {A B A, B U, A B (r)} 36

32 4.3.3 Die abgeschlossene Hülle F + (3 5) Triviale funktionale Abhängigkeit: f Φ(U) ist triviale fa : f gilt immer / in jeder Relation, d.h. f + (von erzeugt) + = {A B B A U} Einfache funktionale Abhängigkeit: f Φ (U) heißt einfach" ( einfache fa ) : f = A b mit b U (d.h. b ist Attribut) Äquivalenz von fa-mengen: F, G Φ(U) F, G sind äquivalent (F ~ G) : F + = G + sei F ~ G; dann sagen wir auch G ist eine Überdeckung (covering) von F, oder G überdeckt F 37

33 4.3.3 Die abgeschlossene Hülle F + (4 5) Minimale Überdeckung: F, G Φ(U) und G ist eine Überdeckung von F G ist eine minimale Überdeckung von F : (1) Alle funktionalen Abhängigkeiten in G sind einfach. (2) Keine funktionale Abhängigkeit in G ist redundant. Dabei ist g G genau dann redundant, wenn g (G\ {g}) +. (3) Kein Attribut auf der linken Seite einer fa in G ist redundant. Sei g = (aa B) G. a ist genau dann redundant, wenn (A B) G +. 38

34 4.3.3 Die abgeschlossene Hülle F + (5 5) Problem: Bestimmung der/einer minimalen Überdeckung ersetze nicht einfache fa s durch entsprechende einfache fa s (Lemma 4.2) eliminiere redundante fa s eliminiere redundante Attribute aus den linken Seiten der fa s 39

35 4.3.4 Armstrong-Regeln/Axiome (1 2) Man betrachte Lemma 4.1 dort: Regeln zur Herleitung weiterer gültiger fa s aus einer Menge vorgegebener fa s (F) Armstrong hat gezeigt, dass die Regeln (1), (2), (3) aus Lemma 4.1 ausreichen, um durch ihre Anwendung alle f F + zu erhalten, und dass aber auch keine weggelassen werden kann! ( Armstrong-Regeln ; dieselbe Eigenschaft haben auch: Regelmengen (1), (3), (4) oder (1), (2), (5)) 40

36 4.3.4 Armstrong-Regeln/Axiome (2 2) Bezüglich der Aufgabenstellung zu einer gegebenen Menge F von fa's deren abgeschlossene Hülle F + zu bestimmen, sind die Armstrong-Regeln korrekt (sound) und vollständig (complete). Korrekt: Es kann dabei kein f F + herauskommen. Vollständig: Jedes f F + kann tatsächlich in endlichen vielen Schritten gefunden werden. 41

37 4.3.5 Zur Berechnung von F + (1 6) Vor.: Relation r: (U F); U Attributmenge, F Φ(U). Definition: Für A U ist A + die Menge aller von A funktional abhängigen Attribute: A + ::= {b U A b (r)}. Damit gilt folgendes Lemma 4.3: Vor. wie oben; A, B U. (1) A B F + B A + (2) F + = {A B A U, B A + } Beweis: klar 42

38 4.3.5 Zur Berechnung von F + (3 6) Beispiel 4-6: r: (a b c d e f g F) F: 1. a b c 2. a e g 3. a g f 4. b d f 5. b g c 6. c a d 7. e a 8. g e Andere Fragen: Bsp.-Rechnungen (ab) + = abcdf (a) + = abcdf c + g + = cadbf = geabcdf Beweis (nächste Folie) f acd F + berechne f + f + = f - e bcg F + berechne e + e + = eabcgfd weiter 73 44

39 4.3.5 Zur Berechnung von F + (4 6) Beweis : ab ab wg.(1) (aus Lemma 4.1) fa1: a bc (2) Erweiterungsregel mit ab ab abc ab abc (3) Transitivität fa6: c ad (2) mit abc abc abcd (3) ab abcd fa4: bd f (2) abcd abcdf ab abcdf (3) fa 2, 3, 5, 7, 8 bringen nicht mehr dazu: (ab) + = abcdf s.71 45

40 4.3.5 Zur Berechnung von F + (5 6) Algorithmus APLUS zur Berechnung von A + begin A+ := A; //A+ wird sukzessive aufgebaut F := F; //F enthält noch nicht abgehakte" fa s repeat A := A+; // A wegen Prüfung, ob sich A+ // noch verändert f = X Y F do if X A+ then A+ := A+ Y // d.h. ergänze A+ F := F -f // hake f ab endif end until A+= A ; // A+ ist jetzt vollständig aufgebaut end APLUS 46

41 4.3.5 Zur Berechnung von F + (6 6) Beispiel 4-7: r: (a b c d e f g F) aus Beispiel 4-6 F = { a bc, ae g, ag f, bd f, bg c, c ad, e a, g e} Eine genauere Analyse ergibt: a b f e d c g Ergebnis: F = angekreuzte fa s, F + = F + F, in vereinfachter zweite erste Analyse Form Analyse 1 X a b notwendig 2 X a c notwendig 3 X ae g ersetzbar durch e g notwendig 4 ag f ersetzbar durch g f überflüssig 5 X bd f notwendig 6 bg c ersetzbar durch g c überflüssig 7 X c a notwendig 8 X c d notwendig 9 X e a notwendig 10X g e notwendig 47

42 4.3.6 Schlüssel / Schlüsselattribute / Nichtschlüsselattribute (1 4) Bestimmung aller Schlüssel Vor.: r: ( U F), F Φ(U) Definition: (Wiederholung) K U ist Schlüssel für r : (1) K ist identifizierend: K U(r), d.h. K U F + (K + = U) (2) K ist minimal mit (1) : A K A U(r), d.h. A U F+ K + = U (A K A + U) 48

43 4.3.6 Schlüssel / Schlüsselattribute / Nichtschlüsselattribute (2 4) Algorithmus zur Bestimmung aller Schlüssel von r: bestimme alle A + gemäß Abschnitt wähle alle minimalen K mit K + = U aus. Beispiel 4-8: (1) r1: (abcde F1) F1 = {a b, ac d, c e, e c} a c b d e Schlüssel: NSA: ac; ae b,d 49

44 4.3.6 Schlüssel / Schlüsselattribute / Nichtschlüsselattribute (3 4) Beispiel 4-8 (Fort.): (2) r2: (abcde F2) F2 = {ab c, b de, bc a} a b d e c Schlüssel: NSA: ab, bc d,e 50

45 4.3.6 Schlüssel / Schlüsselattribute / Nichtschlüsselattribute (4 4) Beispiel 4-9: (Angestellten-Beispiel 4-3) Relation angest: (U F) U={ ANr, Name, Beruf, W-Ort, Gehalt, Abt#, AbtL, Geb#, HM, PNr, PName, %, TelNr} F={ANr Name Beruf Abt# W-Ort Gehalt; Abt# AbtL Geb#; Geb# HM; PNr Pname; ANr PNr % TelNr } ANr PNr Name Beruf W-Ort Gehalt Abt# % Tel PName AbtL Geb# Man beachte: alle Anomalien! Schlüssel: NSA: HM {ANr, PNr} alle anderen 51

46 4 Relationentheorie - Abhängigkeiten, Normalformen, Data Design 4.1 Motivation für den systematischen Entwurf von Relationen Semantische Integritätsbedingungen Funktionale Abhängigkeiten Definition und Eigenschaften Normalformen (2NF, 3NF, BCNF) Partielle und volle funktionale Abhängigkeit Zweite Normalform (2NF) Transitive (funktionale) Abhängigkeiten Dritte Normalform (3NF) Verschärfung der 3NF: BCNF Boyce-Codd-Normalform Data Design Erzeugung von 3NF-Relationen

47 4.4 Normalformen (2NF, 3NF, BCNF) (1 2) Partielle und volle funktionale Abhängigkeit Geg.: Definitionen: r: (U F ); A, B U nicht-triviale funktionale Abhängigkeit A B ( F + ), mit (B A) B ist voll funktional abhängig von A (in r), wenn gilt: (v1) A B F +, (v2) für alle A A: A B F + In Zeichen: A B B ist partiell von A (funktional) abhängig, wenn gilt: (p) es gibt A A: A B F + d.h. A A B 53

48 4.4.1 Partielle und volle funktionale Abhängigkeit (2 2) Beispiel 4-10: U= {a, b, c, d} F = { ab c, ab d, b d } a b c d ab c ab d, aber ab d: ab b d 54

49 4.4.2 Zweite Normalform (2NF) (1 3) r: (U F), F Φ(U); A, B,, K U; a, b, U Eine Relation ist in der Ersten Normalform (1NF), wenn die Attributwerte atomar sind. Definition: Eine 1NF-Relation r ist in der Zweiten Normalform (2NF), wenn jedes Nichtschlüsselattribut von jedem Schlüssel voll funktional abhängig ist; d.h.: r in 2NF : NSA a Schl. K: K a (r) r ist nicht in der 2NF, wenn (irgend)ein NSA von (irgend)einem Schlüssel partiell abhängig ist; d.h.: r nicht in 2NF NSA a Schl. K: (K a) NSA a Schl. K: ( A, A K: A a) 55

50 4.4.2 Zweite Normalform (2NF) (2 3) Beispiel 4-11: (1) r: (U F); U = {a,b,c,d}, F= {ab c, b d } a c b (2) r 1 : (U F); U = {a,b,c,d,e} F = {a b, ac d, c e, e c} Schl.: a b NSA: c d d e Schl.: ab NSA: c,d nicht in 2NF, weil d partiell vom Schlüssel ab abhängig. ac; ae b,d nicht in 2NF (siehe Beispiel 4-8 (1)), nur d ist voll funktional vom Schlüssel ac abhängig Allg.: Falls: A b mit b NSA, A Schlüssel K, dann: nicht 2NF. 56

51 4.4.2 Zweite Normalform (2NF) (3 3) Beispiel 4-12:(Angestellten-Beispiel 4-3) Relation angest: (U F) U={ ANr, Name, Beruf, W-Ort, Gehalt, Abt#, AbtL, Geb#, HM, PNr, PName, %, TelNr} F={ANr Name Beruf Abt# W-Ort Gehalt; Abt# AbtL Geb#; Geb# HM; PNr Pname; ANr PNr % TelNr } ANr PNr Name Beruf W-Ort Gehalt Abt# % Tel PName r 3 r 2 AbtL Geb# HM Abhilfe 1: Zerlegung Relation angest: (U F) in 3 Relationen r 1,r 2,r 3 (s.o.). Ergebnis: r 1,r 2,r 3 in 2NF; trotzdem: alle Anomalien (in r 1 ), Grund? Schlüssel: {ANr, PNr} NSA: alle anderen Nicht in 2 NF / alle Anomalien r 1 57

52 4.4.3 Transitive (funktionale) Abhängigkeiten (1 3) Geg.: r: (U F); A, B U; c U Das Attribut c ist transitiv abhängig von A, wenn es ein B U gibt, so dass folgende Bedingungen erfüllt sind: (t1) A B c (t2) B A (t3) c AB A B c c AB verhindert, daß A = B bzw. A äquivalent B verhindert, daß c trivialerweise (Reflexivität) von A oder B abhängt. wir schreiben: A c c transitiv funktional abhängig von A 58

53 4.4.3 Transitive (funktionale) Abhängigkeiten (2 3) Voraussetzungen wie oben: r:(u,f),... Bezeichnung: Wir nennen c direkt (funktional) abhängig von A, wenn (d1) c funktional, aber (d2) nicht transitiv funktional abhängig ist von A; d.h.: (d1) A c (r) (d2) A B c (r) (B A (r) oder c AB) Wir schreiben: A c (r) Folgerung / Lemma 4.4: Für jeden Schlüssel K in r und jedes Attribut c K gilt: K c (r) K c (r) 59

54 4.4.3 Transitive (funktionale) Abhängigkeiten (3 3) Beweis: Annahme: (K c (r)) Dann gibt es B mit: B K (somit K B (r)) und B c (r) Da K Schlüssel, gilt B K (r). Somit: K B c c BK (= K) d.h. aber K c (r), nicht K c (r). 60

55 4.4.4 Dritte Normalform (3NF) (1 5) Definition: Eine 1NF-Relation ist in der dritten Normalform (3NF), wenn kein Nichtschlüsselattribut von (irgend)einem Schlüssel transitiv abhängig ist; m.a.w.: wenn jedes NSA von jedem Schlüssel direkt abhängig ist; d.h.: r in 3NF : NSA a Schl. K: (K a (r)) Somit gilt entsprechend: NSA a Schl. K: K r nicht in 3NF NSA a Schl. K: K a (r) a (r) 61

56 4.4.4 Dritte Normalform (3NF) (2 5) Beispiel 4-13: s:(u F) U = {a, b, c, d, e}; F = {ab c, c d, b e} a b c e Bemerkung: Allgemein gilt: d Schlüssel: ab NSA: c,d,e ab c d, ab b e d und e sind transitiv Abh. vom Schlüssel nicht 3NF ab b e nicht 2NF r nicht in 2NF r nicht in 3NF bzw. r in 3NF r in 2NF (vgl. Lemma 4.4) 62

57 4.4.4 Dritte Normalform (3NF) (3 5) Beispiel 4-14:(Angestellten-Beispiel 4-3) Relation angest: (U F) (vgl. Beispiel 4-12) ANr PNr Name Beruf W-Ort Gehalt Abt# % Tel r 3 PName r 11 r 12 r 2 r 121 AbtL Geb# Abhilfe: Zerlegung r 1 in r 11, r 12 : r 122 HM r 2,r 3 : in 3NF. r 1 : in 2NF, nicht in 3 NF/ Anomalien Grund: (Schl.) ANr r 1 r 11 in 3 NF; r 12 in 2 NF, nicht in 3 NF / Anomalien! Grund: (Schl.) Abt# HM (NSA); Abhilfe: Zerlegung r 12 in r 121, r 122 : beide in 3 NF AbtL (NSA) 63

58 4.4.4 Dritte Normalform (3NF) (4 5) Ergebnis: Name r 11 ANr PNr Beruf W-Ort Gehalt Abt# % Tel PName angest: (U F) wird zerlegt in 5 Relationen: r 11, r 121, r 122, r 2, r 3 (alle sind in 3 NF)! r 3 r 2 AbtL Geb# r 121 HM r

59 4.4.4 Dritte Normalform (3NF) (5 5) Beispiel 4-15: ( Lieferbeziehung ): Projekte (P) Bauteile (B) Lieferanten (L) lief: LIEF(PBL PB L, L B) P L B Schl. PB L B; B PBL aber Schl. PL L B; B PL Schlüssel: PB; PL NSA: 2NF, 3NF B kein NSA Trotzdem (obwohl 3NF): Anomalien! 65

60 4.4.5 Verschärfung der 3NF: BCNF Boyce-Codd-Normalform (1 2) r in 3NF NSA a Schl. K: K a (r) Definition: Eine einfache fa A b ( F + ) heißt elementar : fa ist nicht-trivial (d.h. b A) und voll funktional abhängig (A b) Umformulierung mittels elementarer fa s : r in 3NF Für jede elementare fa A b gilt: entw. A ist Schlüssel oder b ist Schlüsselattribut 66

61 4.4.5 Verschärfung der 3NF: BCNF Boyce-Codd-Normalform (2 2) Wdh.: r in 3NF Für jede elementare fa A b gilt: entw. A ist Schlüssel oder b ist Schlüsselattribut r ist in BCNF (Boyce-Codd-Normalform) : Für jede elementare fa A b gilt: A ist Schlüssel. d.h. alle elementaren fa s gehen von Schlüsseln aus! Folgerung: r in BCNF r in 3NF (aber: Umkehrung gilt i. allg. nicht! (vgl. Relation lief)) 67

62 4 Relationentheorie - Abhängigkeiten, Normalformen, Data Design 4.1 Motivation für den systematischen Entwurf von Relationen Semantische Integritätsbedingungen Funktionale Abhängigkeiten Definition und Eigenschaften Normalformen (2NF, 3NF, BCNF) Data Design Erzeugung von 3NF-Relationen Problemstellung Zerlegung Test auf Verlustfreiheit (Verbundtreue) Algorithmen zur Bildung von 3NF-Relationsschemata

63 4.5 Data Design Erzeugung von 3NF-Relationen (1 2) Problemstellung (1) Geg.: Relation r: (U F) mit F Φ(U) mit gewissen Anomalie-Möglichkeiten ges.: Zerlegung von r in mehrere Relationen, die alle in 3NF (oder evtl. auch BCNF) sind. oder auch: (2) Geg.: Menge von Attributen U Menge von fa s F Φ(U) ges.: Zusammenfassung von Attributen zu Relationen in 3NF 69

64 4.5.1 Problemstellung (2 2) Lösung: Algorithmen zur Bildung von 3NF-Relationen: zu (1): Dekomposition - Zerlegung mit guten Eigenschaften: - Test auf Verlustfreiheit und fa-erhaltung - solange, bis Relationen in 3NF, verlustfrei und fa-erhaltend sind zu (2): a) man tut zunächst wieder so, als ob alles in r: (U F), dann weiter wie (1) b) Synthese: Zusammenfassen von Attributen und fa s unter Berücksichtigung der 3NF-Eigenschaft 70

65 4.5.2 Zerlegung (1 6) Kriterien zur Zerlegung von Relationsschemata 1. Die funktionalen Abhängigkeiten müssen erhalten bleiben ( fa-erhaltend ). 2. Die Zerlegung muß verlustfrei sein (d.h. beim Join dürfen keine unerwünschte Tupel entstehen). 71

66 4.5.2 Zerlegung (2 6) Definition: (Zerlegung, fa-erhaltend, verlustfrei) Geg: Relation r: (U F); Datenbank D:({r i : (A i F i ) i=1,, n} Ø) (1) D ist eine Zerlegung von r : A i = U und F i ~ π [Ai ] (F+ ) i Sei D eine Zerlegung von r: (2) D ist fa-erhaltend : ( F i+ ) + = F + i Anmerkung: wegen ( F i+ ) + = ( F i ) + gilt insbesondere: F i = F D fa-erhaltend i i (3) D ist verlustfrei (auch: verbundtreu ) : r.a 1 * r.a 2 *... * r.a n = r i Anmerkung: r.a i ist vom Typ (A i F i ) 72

67 4.5.2 Zerlegung (3 6) Beispiel 4-16: Beispiel für eine Zerlegung: betrachte: r: (abcd a b, b d, c d) (1) r 1 : (ac Ø); r 2 : (bcd b d, c d) Zerlegung: ja nicht fa-erhaltend: a b {b d, c d} + nicht verlustfrei: r a b c d r.ac a c r.bcd b c d Und: 0100 r.ac r.bcd, r (ebenso 1000) 73

68 4.5.2 Zerlegung (4 6) Beispiel 4-16 (Fort.) betrachte: r: (abcd a b, b d, c d) (2) r 1 : (abd a b, b d); r 2 : (cd c d) Zerlegung: ja fa-erhaltend: ja nicht verlustfrei: kann man wieder durch ein Gegenbeispiel zeigen, ausgehend von r a b c d

69 4.5.2 Zerlegung (5 6) Beispiel 4-16 (Fort.) betrachte: r: (abcd a b, b d, c d) (3) r: (abcd a b, b d, c d) r 1 : (ab a b); r 2 : (acd a d, c d) Zerlegung: ja nicht fa-erhaltend: b d {a b, a d, c d} + Verlustfrei: ja. ac ist Schlüssel von r und somit auch von r 2. Daher kann beim Join nur das richtige ab-tupel dazukommen. 75

70 4.5.2 Zerlegung (6 6) Beispiel 4-16 (Fort.) betrachte: r: (abcd a b, b d, c d) (4) r 1 : (abd a b, b d) r 2 : (acd a d, c d) Zerlegung: ja fa-erhaltend: ja verlustfrei: siehe (3) Ergebnis: Es sind alle Kombinationen fa-erhaltend (ja nein) / verlustfrei (ja nein) möglich! 76

71 4.5.3 Test auf Verlustfreiheit (Verbundtreue) (1 14) (A) Zerlegung in 2 Relationen Satz von Delobel (für Zerlegung in 2 Relationen/ 2 Relationsschemata) Geg.: r: (U F), und D: ({ r 1 :(A 1 F 1 ), r 2 :(A 2 F 2 ) }) eine Zerlegung von r Wir setzen: A 1 A 2 = B, A 1 = AB, A 2 = BC, mit A B= A C = B C = Damit ist: U = ABC A1 A Dann gilt: U B D ist verlustfrei (B A F + oder B C F + ) A2 C 77

72 4.5.3 Test auf Verlustfreiheit (Verbundtreue) (2 14) Beispiel 4-17: r: (U F) U = {ANR, NAME, PRO#, ABT#} F = {ANR NAME, ANR ABT#} (1) Zerlegung: r 1, r 2 r 1 : A 1 = {ANR, NAME, ABT#} F 1 = {ANR NAME, ABT#} r 2 : A 2 = {PRO#, ABT#} F 2 = {} Alle funktionalen Abhängigkeiten sind erhalten. Aber: Zerlegung ist nicht verbundtreu, denn: ABT# ANR NAME F + ABT# PRO# F + A={ANR,Name} B={ABT#} C={PRO#} 78

73 4.5.3 Test auf Verlustfreiheit (Verbundtreue) (3 14) Beispiel 4-17 (Fort.) (2) Zerlegung: r 3, r 4 r 3 : A 3 = {ANR, NAME, ABT#} r 4 : A 4 = {ANR, PRO#} Zerlegung ist verbundtreu wg. B A. B= ANR A= {NAME, ABT#} C= PRO# 79

74 4.5.3 Test auf Verlustfreiheit (Verbundtreue) (4 14) (B) Allg. Fall: Zerlegung in n Relationen (n beliebig n>=2) Dazu: Tableau-Algorithmus Erläuterung zunächst am Beispiel r: ( ABCDE A C, B C, C D, DE C, CE A ) r 1 : ( AD ) r 2 : ( AB ) r 3 : ( BE ) r 4 : ( CDE ) r 5 : ( AE ) 80

75 4.5.3 Tableau-Algorithmus (5 14) A B C D E a 1 b 12 b 13 a 4 b 15 a 1 a 2 b 23 b 24 b 25 A B C D E a 1 b 12 b 13 a 4 b 15 a 1 a 2 b 13 b 24 b 25 b 31 a 2 b 33 b 34 a 5 b 31 a 2 b 33 b 34 a 5 b 41 b 42 a 3 a 4 a 5 b 41 b 42 a 3 a 4 a 5 a 1 b 52 b 53 b 54 a 5 a 1 b 52 b 13 b 54 a 5 A C B C A B C D E A B C D E a 1 b 12 b 13 a 4 b 15 a 1 b 12 b 13 a 4 b 15 a 1 a 2 b 23 b 24 b 25 a 1 a 2 b 13 b 24 b 25 b 31 a 2 b 33 b 34 a 5 b 31 a 2 b 33 b 34 a 5 b 41 b 42 a 3 a 4 a 5 b 41 b 42 a 3 a 4 a 5 a 1 b 52 b 53 b 54 a 5 a 1 b 52 b 13 b 54 a 5 81

76 4.5.3 Tableau-Algorithmus (6 14) A B C D E A B C D E a 1 b 12 a 1 b 15 a 2 b 31 b 25 a 2 b 41 a 5 b 42 b 52 b 13 b 13 b 13 a 3 b 13 a 4 b 24 b 34 a 4 b 54 a 5 a 1 a 5 C D A B C D E a 1 b 12 a 1 b 15 a 2 b 31 b 25 a 2 b 41 a 5 b 42 a 1 a 5 b 52 b 13 b 13 b 13 a 3 b 13 a 4 b 24 b 34 a 4 b 54 a 5 a 1 b 12 a 1 b 15 a 2 b 31 b 25 a 2 b 41 a 5 b 42 a 1 a 5 b 52 b 13 b 13 b 13 a 3 b 13 a 4 a 4 a 4 a 4 a 4 a 5 DE C A B C D E a 1 b 12 a 2 a 2 b 41 a 5 b 42 a 1 a 5 b 52 b 13 a 1 b 15 b 13 b 31 b 25 b 13 a 3 b 13 a 4 a 4 a 4 a 4 a 4 a 5 82

77 4.5.3 Tableau-Algorithmus (7 14) A B C D E A B C D E a 1 b 12 a 1 b 15 a 2 b 31 b 25 a 2 b 41 a 5 b 42 a 1 a 5 b 52 b 13 b 13 a 3 a 3 a 3 a 4 a 4 a 4 a 4 a 4 a 5 CE A A B C D E a 1 b 12 a 1 b 15 a 2 b 31 b 25 a 2 b 41 a 5 b 42 a 1 a 5 b 52 b 13 b 13 a 3 a 3 a 3 a 4 a 4 a 4 a 4 a 4 a 5 a 1 b 12 a 2 a 2 a 1 a 5 b 42 a 1 a 5 b 52 b 13 a 1 b 15 b 13 a 1 b 25 a 3 a 3 a 3 a 4 a 4 a 4 a 4 a 4 a 5 83

78 4.5.3 Tableau-Algorithmus (8 14) A B C D E a 1 a 1 b 15 a 1 b 25 a 1 a 5 b 42 a 1 a 5 A a 1 b 12 a 2 a 2 b 52 B b 12 a 2 a 2 b 42 b 52 b 13 b 13 a 3 a 3 a 3 C a 3 a 3 a 3 a 3 a 3 a 4 a 4 a 4 a 4 a 4 A C B C a 4 a 4 a 4 a 4 a 4 a 5 a 1 b 15 a 1 b 25 a 1 a 5 a 1 a 5 D E a 5 84

79 4.5.3 Test auf Verlustfreiheit (Verbundtreu) (9 14) Beispiel 4-18: r:(u F) U={ s (*Student*), v Vorlesung, d Dozent[in], e Semester, i Institut, f Fakultät, k Sekretär[in], g Gebäude, h Hausmeister[in], ö Hörsaal} s v e d F={sve difk, ved ifk, d ifk, i fk, ö gh, g h} ö g h x i r.a i, x=x 1 x 2... x 5 ; Frage: ist x r? i f k F lässt sich vereinfachen zu: G={sve d, d i, i fk, ö g, g h} Zerlegung nach Augenmaß (3NF!) r i = r.a i A 1 : sved; A 2 : di; A 3 : ifk; A 4 : ög; A 5 : gh ; (i=1,2,...) 85

80 4.5.3 Test auf Verlustfreiheit (Verbundtreue) (10/14) Beispiel 4-18 (Forts.): r :(U F) U={s,v,d,e,i,f,k,g,h,ö} G={sve d, d i, i fk, ö g, g h} Zerlegung: A 1 : sved; A 2 : di; A 3 : ifk; A 4 : ög; A 5 : gh ; Zerleg. x r. A i Attrib. x=x 1.. x 5 svde: x 1 di: x 2 ifk: x 3 ög: x 4 gh: x 5 1 s 2 v 3 d 4 e a 1 a 2 a 3 a 4 5 i 6 f a 1 a 2 a 3 a 4 a 5 a 6 a 7 a 8 a 9 a 0 x r? ba 15 5 ba 16 6 ba 17 7 b 18 b 19 b 10 y 1 r b 21 b 22 a 3 b 24 a 5 ba 26 6 ab 727 b 28 b 29 b 20 y 2 r b 31 b 32 b 33 b 34 a 5 a 6 a 7 b 38 b 39 b 30 y 3 r b 41 b 42 b 43 b 44 b 45 b 46 b 47 a 8 ba 49 9 a 0 y 4 r b 51 b 52 b 53 b 54 b 55 b 56 b 57 a 8 a 9 b 50 y 5 r 7 k 8 g 9 h 10 ö 86

81 4.5.3 Test auf Verlustfreiheit (Verbundtreue) (11/14) Beispiel 4-18 (Forts.): r:(u F); F={sve difk, ved ifk, d ifk, i fk,ö gh, g h} s f v d i k e ö g h Zerlegung: A 1 : sved; A 2 : di; A 3 : ifk; A 4 : ög; A 5 : gh ; A 6 : Attrib sveö; 9 10 Zerleg. s v d e i f k g h ö x r. A i a 1 a 2 a 3 a 4 a 5 a 6 a 7 a 8 a 9 a 0 x r? x=x 1... x 5 x 6 svde: x 1 a 1 a 2 a 3 a 4 ba 15 5 ba 16 6 ba 17 7 b 18 b 19 b 10 y 1 r di: x 2 b 21 b 22 a 3 b 24 a 5 ba 26 6 ab 727 b 28 b 29 b 20 y 2 r ifk: x 3 b 31 b 32 b 33 b 34 a 5 a 6 a 7 b 38 b 39 b 30 y 3 r ög: x 4 gh: x 5 sveö x 6 b 41 b 42 b 43 b 44 b 45 b 46 b 47 a ba 49 9 a y 4 r b 51 b 52 b 53 b 54 b 55 b 56 b 57 8 a a b 0 50 y 5 r a 1 a 2 ab 363 a 4 b 65 b 66 b 67 b 8 68 b 9 69 a 0 y 6 r a 5 a 6 a 7 a 8 a 9 87

82 4.5.3 Test auf Verlustfreiheit (Verbundtreue) (12 14) Geg.: r: (U F); D: ({r i : (Á i F i ) i=1,, k} Ø) Zerlegung von r U = {u 1, u 2,, u n } = A 1 A 2 A k Frage: Zerlegung verlustfrei? (1) Konstruiere Matrix MAT (Tabelle / Tableau ) mit: k Zeilen (für Zerlegung A 1, A 2,, A k ) n Spalten (für Attribute u 1, u 2,, u n ); besetze die Matrix mit Anfangswerten: a j, falls u j A i MAT[i,j]= b ij, sonst (a j,b ij syntakt. Symbole) 88

83 4.5.3 Test auf Verlustfreiheit (Verbundtreue) (13 14) (2) Wiederhole: - Wähle ein X Y F; - suche die Zeilen von MAT, die in den X-Spalten übereinstimmen; - setze in diesen Zeilen die Y-Werte gleich bis: - dabei: bevorzuge a j (vor b ij ) d.h. ist eines der gleich zu setzenden Zeichen gleich a j, so wähle als Ergebnis a j - sich MAT nicht mehr verändert oder - in MAT eine Zeile der Form (a 1, a 2,, a n ) 89

84 4.5.3 Test auf Verlustfreiheit (Verbundtreue) (14 14) (3) Ergebnis: Zerlegung verlustfrei in MAT eine Zeile der Form (a 1, a 2,, a n ). 90

Datenbanksysteme Übungsblatt 1

Datenbanksysteme Übungsblatt 1 Datenbanksysteme Übungsblatt 1 Sommersemester 2003 AIFB Institut für Angewandte Informatik und Formale Beschreibungsverfahren 1 Aufgabe 1a (1/2) Änderungsanomalie: Wenn eine Änderung nicht überall ordnungsgemäß

Mehr

Kapitel 7: Formaler Datenbankentwurf

Kapitel 7: Formaler Datenbankentwurf 7. Formaler Datenbankentwurf Seite 1 Kapitel 7: Formaler Datenbankentwurf Die Schwierigkeiten der konzeptuellen Modellierung sind zu einem großen Teil dadurch begründet, dass sich die relevanten Strukturen

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

Datenbanksysteme 2015

Datenbanksysteme 2015 Datenbanksysteme 2015 Kapitel 12: Relationale Entwurfstheorie Oliver Vornberger Institut für Informatik Universität Osnabrück Funktionale Abhängigkeiten ist funktional abhängig von r, t R : r. = t. r.

Mehr

Normalformen. Was sind Kriterien eines guten Entwurfs? So wenig Redundanz wie möglich. Keine Einfüge-, Lösch-, Änderungsanomalien

Normalformen. Was sind Kriterien eines guten Entwurfs? So wenig Redundanz wie möglich. Keine Einfüge-, Lösch-, Änderungsanomalien Normalformen Was sind Kriterien eines guten Entwurfs? So wenig Redundanz wie möglich Keine Einfüge-, Lösch-, Änderungsanomalien IX-19 Erste und Zweite Normalform Beispiel: (nicht 1. Normalform) vorrat

Mehr

1 Grundkonzepte der datenorientierten Modellierung

1 Grundkonzepte der datenorientierten Modellierung 1 Grundkonzepte der datenorientierten Modellierung 1.1 Ein einführendes Beispiel... 2 1.2 Konventioneller Ansatz... 5 1.3 Datenbank-orientierter Ansatz... 16 1.4 Probleme beim Tabellenentwurf... 25 1.5

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

Entwurfstheorie relationaler Datenbanken 7. Entwurfstheorie relationaler Datenbanken

Entwurfstheorie relationaler Datenbanken 7. Entwurfstheorie relationaler Datenbanken 7. Entwurfstheorie relationaler Datenbanken Wie sieht ein gutes konzeptionelles Schema der Datenbank aus? Wie kann die Güte eines Datenbankschemas beurteilt werden? Beispiel: Kunde(KName, KAdr, Kto) Auftrag(KName,

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

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

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

3. Grundlagen relationaler Datenbanksysteme

3. Grundlagen relationaler Datenbanksysteme 3. Grundlagen relationaler Datenbanksysteme Hier nur kurze Rekapitulation, bei Bedarf nachlesen 3.1 Basiskonzepte des Relationenmodells 1 Darstellung der Miniwelt in Tabellenform (DB = Menge von Relationen

Mehr

Kapitel DB:VII. VII. Entwurfstheorie relationaler Datenbanken

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

Mehr

8. Tutorübung zu Grundlagen: Datenbanken

8. Tutorübung zu Grundlagen: Datenbanken 8. Tutorübung zu Grundlagen: Datenbanken Chaoran Chen chaoran.chen@in.tum.de 01.12-07.12.2014 Relationale Entwurfstheorie Normalformen 1. Normalform 2. Normalform 3. Normalform Boyce-Codd Normalform (BCNF)

Mehr

Datenbanken 6: Normalisierung

Datenbanken 6: Normalisierung Datenbanken 6: Normalisierung 26. IV. 2016 Outline 1 Organisatorisches 2 SQL 3 Überblick Datenbankdesign 4 Normalisierung Erste Normalform Zweite Normalform Dritte Normalform Boyce-Codd Normal Form Vierte

Mehr

5. Normalisierung von Relationen

5. Normalisierung von Relationen 5. Normalisierung von Relationen Einführung Funktionale Abhängigkeiten Bestimmung von Schlüsselkandidaten Äquivalenzbeziehungen Zerlegung von Relationen zur Beseitigung von Anomalien Korrektheitskriterien

Mehr

Programmierung und Datenbanken II

Programmierung und Datenbanken II Programmierung und Datenbanken II Wiederholung Was haben wir bisher getan? Anwendungsbereich analysiert Datenobjekte + Beziehungen identifiziert Modelle erstellt Modellhafte Aufbereitung der Analyse (ERM/SERM)

Mehr

Relationale Entwurfstheorie. Kapitel 5 201 / 510

Relationale Entwurfstheorie. Kapitel 5 201 / 510 Kapitel 5 Relationale Entwurfstheorie 201 / 510 Relationale Entwurfstheorie Ein schlecht entworfenes Schema führt zu folgenden Anomalien Updateanomalien: bei Änderungen eines Fakts müssen viele Tupel angefaßt

Mehr

4.2.2.2 Funktionale Abhängigkeiten

4.2.2.2 Funktionale Abhängigkeiten Funktionale Abhängigkeiten 4.2.2.2 Funktionale Abhängigkeiten 2002 Prof. Dr. Rainer Manthey Informationssysteme 1 Spezielle Formen von FDs Ist die linke Seite einer FD nicht mehr verkleinerbar (reduzierbar),

Mehr

5. Normalisierung von Relationen

5. Normalisierung von Relationen 5. Normalisierung von Relationen Einführung Funktionale Abhängigkeiten Bestimmung von Schlüsselkandidaten Äquivalenzbeziehungen Zerlegung von Relationen zur Beseitigung von Anomalien Korrektheitskriterien

Mehr

Verfeinerung des relationalen Schemas

Verfeinerung des relationalen Schemas Verfeinerung des relationalen Schemas Ein schlechtes Schema Filmliste Titel Regisseur Kino Telefonnummer Zeit The Hobbit Jackson Cinema City 441111 11:30 The Lord of the Rings3 Jackson Cinema City 441111

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

Grundlagen: Datenbanken WS 15/16

Grundlagen: Datenbanken WS 15/16 Grundlagen: Datenbanken WS 15/16 2. Zentralübung / Wiederholung / Fragestunde Harald Lang gdb@in.tum.de Diese Folien finden Sie online. Die Mitschrift erhalten Sie im Anschluss. Termine Klausur 24.02.2016,

Mehr

Teil 9: Einführung in relationale Normalformen

Teil 9: Einführung in relationale Normalformen 9. Einführung in relationale Normalformen 9-1 Teil 9: Einführung in relationale Normalformen Literatur: Elmasri/Navathe: Fundamentals of Database Systems, 3.Aufl., Kap. 14, Functional Dependencies and

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

9. Normalformen / Erweiterungen 9.1 Vorbemerkung, Zielsetzung, Inhalt Datenmodellierung und Integritätsaspekte

9. Normalformen / Erweiterungen 9.1 Vorbemerkung, Zielsetzung, Inhalt Datenmodellierung und Integritätsaspekte 9. Normalformen / Erweiterungen 9.1 Vorbemerkung, Zielsetzung, Inhalt Datenmodellierung und Integritätsaspekte Hier betrachtet: Integritätsaspekte beim Entwurf eines relationalen Datenbankschemas (Tabellenentwurf);

Mehr

Design Theorie für relationale Datenbanken

Design Theorie für relationale Datenbanken Design Theorie für relationale Datenbanken Design von relationalen Datenbanken alternativen Datenabhängigkeiten Normalisierung Ziel: automatisches Datenbankdesign IX-1 Schlechtes Datenbank Design Frage:

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 2006/2007 Vorlesung: Dr. Peer Kröger Übungen: Karsten

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 smichel@cs.uni-kl.de Normalformen Wiederholung: Normalisierung von Relationen Um Qualitätsprobleme im ursprünglichen

Mehr

3. Übungszettel (Musterlösung)

3. Übungszettel (Musterlösung) 3. Übungszettel (Musterlösung) Einführung in Datenbanksysteme Datenbanken für die Bioinformatik Heinz Schweppe, Jürgen Broß, Katharina Hahn Übungsaufgaben 1. Aufgabe (DDL + Constraints) XX Punkte Die Tabellen

Mehr

Relationale Entwurfstheorie

Relationale Entwurfstheorie Grundlagen der Datenbanken Dr. Gerd Gröner Wintersemester 2013/14 Lernziele Charakterisierung "guter" relationaler Schemata: - jede Relation entspricht genau einer Objektmenge - eventuell unter Einbezug

Mehr

Normalisierung I. Ziele

Normalisierung I. Ziele Normalisierung I Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Formale Ermittlung von Schlüsselkandidaten Funktionale Abhängigkeiten Normalformen Lehr- und Forschungseinheit Datenbanken

Mehr

Logischer DB-Entwurf. Prof. Dr. T. Kudraß 1

Logischer DB-Entwurf. Prof. Dr. T. Kudraß 1 Logischer DB-Entwurf Prof. Dr. T. Kudraß 1 Ziel: Entwurf eines relationalen DB-Schemas Theoretische Grundlage für den Entwurf eines guten relationalen DB-Schemas (Normalisierungslehre, Entwurfstheorie)

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

Relationale Entwurfstheorie

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

Mehr

Datenbanken: Relationales Datenbankmodell RDM

Datenbanken: Relationales Datenbankmodell RDM Das RDM wurde in den 70'er Jahren von Codd entwickelt und ist seit Mitte der 80'er Jahre definierter Standard für Datenbanksysteme! Der Name kommt vom mathematischen Konzept einer Relation: (Sind A, B

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

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 (gdb@in.tum.de)

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (III) 17.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie

Mehr

Rückblick: Datenbankentwurf

Rückblick: Datenbankentwurf Rückblick: Datenbankentwurf Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben Gegenstände

Mehr

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen C2: Relationenbildung und Normalisierung Lernziele: Nach der Bearbeitung dieser Lektion haben Sie folgende Kenntnisse erworben: Sie können den

Mehr

4. Normalisierung von Relationenschemata

4. Normalisierung von Relationenschemata 4. Normalisierung von Relationenschemata Ziel: Vermeidung von Anomalien in Relationenschemata wird erreicht durch systematische Vorgehensweise beim Datenentwurf vom eerm zum Relationalen Modell (s. voriges

Mehr

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15.

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15. Datenbankanwendung Wintersemester 2014/15 Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern smichel@cs.uni-kl.de Wiederholung: ProfVorl PersNr Name Rang Raum VorlNr Titel SWS 2125 Sokrates C4 226 5041

Mehr

Vorlesung Datenbank-Entwurf Klausur

Vorlesung Datenbank-Entwurf Klausur Dr. Stefan Brass 3. Juli 2002 Institut für Informatik Universität Giessen Vorlesung Datenbank-Entwurf Klausur Name: Geburtsdatum: Geburtsort: (Diese Daten werden zur Ausstellung des Leistungsnachweises

Mehr

Informatik 10 Mar Datenbanken: RDM Normalisierung April 2014

Informatik 10 Mar Datenbanken: RDM Normalisierung April 2014 Normalisierung Eine Datenbank gilt als konsistent, wenn sie bestimmten Kriterien, den sog. Integritätsbedingungen genügt. Die Integritätsbedingungen sollen also dafür sorgen, dass keine unkorrekten Daten

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

2. Übungsblatt 3.0 VU Datenmodellierung

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

Mehr

Resolutionsalgorithmus

Resolutionsalgorithmus 112 Resolutionskalkül Mit dem Begriff Kalkül bezeichnet man eine Menge von syntaktischen Umformungsregeln, mit denen man semantische Eigenschaften der Eingabeformel herleiten kann. Für den Resolutionskalkül:

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2008 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

Beschreibungskomplexität von Grammatiken Definitionen

Beschreibungskomplexität von Grammatiken Definitionen Beschreibungskomplexität von Grammatiken Definitionen Für eine Grammatik G = (N, T, P, S) führen wir die folgenden drei Komplexitätsmaße ein: Var(G) = #(N), Prod(G) = #(P ), Symb(G) = ( α + β + 1). α β

Mehr

Datenbanken (Übung 12)

Datenbanken (Übung 12) Datenbanken (Übung 12) Prof. Dr.-Ing. Norbert Fuhr Dipl.-Inform. Thomas Beckers (tbeckers@is.inf.uni-due.de) Universität Duisburg-Essen Fachgebiet Informationssysteme 1. 2. Februar 2012 Dipl.-Inform. Thomas

Mehr

An approximation of Edgar Codd's definition of 3NF:

An approximation of Edgar Codd's definition of 3NF: 4 Datenbank-Entwurf Informationssysteme für Ingenieure Herbstsemester 2016 4-2 Normalisierung An approximation of Edgar Codd's definition of 3NF: Every non-key attribute must provide a fact about the key,

Mehr

Kapitel 11. Dimension und Isomorphie

Kapitel 11. Dimension und Isomorphie Kapitel 11. Dimension und Isomorphie Bestimmung der Dimension Satz. Sei (v 1, v 2,..., v n ) ein minimales Erzeugendensystem von V, d.h. dieses System ist ein Erzeugendensystem von V, aber keines der nach

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

Übungsblatt 4. Aufgabe 7: Datensicht Fachkonzept (Klausur SS 2002, 1. Termin)

Übungsblatt 4. Aufgabe 7: Datensicht Fachkonzept (Klausur SS 2002, 1. Termin) Übungsblatt 4 Aufgabe 7: Datensicht Fachkonzept (Klausur SS 2002, 1. Termin) Die Saartal Linien beauftragen Sie mit dem Entwurf der Datenstrukturen für ein Informationssystem. Dieses soll zur Verwaltung

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

Aufgabe 1: Kanonische Überdeckung

Aufgabe 1: Kanonische Überdeckung Aufgabe 1: Kanonische Überdeckung Ist die kanonische Überdeckung F c einer Menge F von funktionalen Abhängigkeiten eindeutig? Begründen Sie Ihre Antwort. Die kanonische Überdeckung F c einer Menge F von

Mehr

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Algorithmen mit konstantem Platzbedarf: Die Klasse REG Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August

Mehr

Wiederholung VU Datenmodellierung

Wiederholung VU Datenmodellierung Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

Relationale Entwurfstheorie

Relationale Entwurfstheorie Relationale Entwurfstheorie Funktionale Abhängigkeiten Normalformen Normalisierung durch Dekomposition Funktionale Abhängigkeiten Def.: Sei R ein Schema, und R. Die funktionale Abhängigkeit gilt, wenn

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Datenbanksysteme Teil 3 Indizes und Normalisierung. Stefan Maihack Dipl. Ing. (FH) Datum:

Datenbanksysteme Teil 3 Indizes und Normalisierung. Stefan Maihack Dipl. Ing. (FH) Datum: Datenbanksysteme Teil 3 Indizes und Normalisierung Stefan Maihack Dipl. Ing. (FH) Datum: 01.11.2005 1 MySQL - Normalisierung Durch die Normalisierung von Tabellen soll folgendes erreicht werden Redundanzfreie,

Mehr

Logischer Entwurf von Datenbanken

Logischer Entwurf von Datenbanken Logischer Entwurf von Datenbanken Relationales Datenbankschema Wintersemester 16/17 DBIS 1 Typischer Datenbankentwurf Anforderungsanalyse und -spezifikation Miniwelt Konzeptioneller Entwurf E/R-Diagramm

Mehr

Kommunikation und Datenhaltung

Kommunikation und Datenhaltung Kommunikation und Datenhaltung 3. Übung zur Datenhaltung Relationaler Entwurf & DDL Agenda Institut für Programmstrukturen und Datenorganisation (IPD) Ergänzung zur Vorlesung: Normalformen Ergänzungen

Mehr

Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive

Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive Grammatik G mit L(G) = L(G ). Beweis im Beispiel (2.): G = (V,Σ, P, S) : P = {S asbc, S abc, CB BC, ab ab, bb bb, bc bc, cc cc}. (i) G

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

Vorlesung. Einführung in die mathematische Sprache und naive Mengenlehre

Vorlesung. Einführung in die mathematische Sprache und naive Mengenlehre Vorlesung Einführung in die mathematische Sprache und naive Mengenlehre Allgemeines RUD26 Erwin-Schrödinger-Zentrum (ESZ) RUD25 Johann-von-Neumann-Haus Fachschaft Menge aller Studenten eines Institutes

Mehr

Einführung in Datenbanken - Wiederholung Normalformen - Philipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung

Einführung in Datenbanken - Wiederholung Normalformen - Philipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung Einführung in Datenbanken - Wiederholung Normalformen - Philipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung 1 Überblick Normalformen 2NF 3NF BCNF 2 Zweite Normalform (2NF) Definition (zweite

Mehr

Kapitel DB:IV (Fortsetzung)

Kapitel DB:IV (Fortsetzung) Kapitel DB:IV (Fortsetzung) IV. Logischer Datenbankentwurf mit dem relationalen Modell Das relationale Modell Integritätsbedingungen Umsetzung ER-Schema in relationales Schema DB:IV-45 Relational Design

Mehr

1 Mengen. 1.1 Definition

1 Mengen. 1.1 Definition 1 Mengen 1.1 Definition Eine Menge M ist nach dem Begründer der Mengenlehre Georg Cantor eine Zusammenfassung von wohlunterschiedenen(verschiedenen) Elementen. Eine Menge lässt sich durch verschiedene

Mehr

Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln

Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Frank Heitmann heitmann@informatik.uni-hamburg.de 9. Juni 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/36 Ersetzbarkeitstheorem

Mehr

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise)

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise) WS 2014/15 Diskrete Strukturen Kapitel 2: Grundlagen (Beweise) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_14

Mehr

12 Der Abstand eines Punktes von einer Geraden Seite 1 von Der Abstand eines Punktes von einer Geraden

12 Der Abstand eines Punktes von einer Geraden Seite 1 von Der Abstand eines Punktes von einer Geraden 12 Der Abstand eines Punktes von einer Geraden Seite 1 von 5 12 Der Abstand eines Punktes von einer Geraden Die Bestimmung des Abstands eines Punktes von einer Geraden gehört zu den zentralen Problemen

Mehr

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat Formale Grundlagen der Informatik 1 Kapitel 5 Über reguläre Sprachen hinaus und (Teil 2) Frank Heitmann heitmann@informatik.uni-hamburg.de 21. April 2015 Der Kellerautomat - Formal Definition (Kellerautomat

Mehr

Günther Vinek - Paul Frederick Rennert - A Min Tjoa. Datenmodellierung: Theorie und Praxis des Datenbankentwurfs

Günther Vinek - Paul Frederick Rennert - A Min Tjoa. Datenmodellierung: Theorie und Praxis des Datenbankentwurfs Günther Vinek - Paul Frederick Rennert - A Min Tjoa Datenmodellierung: Theorie und Praxis des Datenbankentwurfs Technische ftedsseirsie Darmstodt FACH&cREiCH INFOftMATiK BIBLIOTHEK lovenlor-nr Sachgebiete

Mehr

R = {(1, 1), (2, 2), (3, 3)} K 1 = {1} K 2 = {2} K 3 = {3}

R = {(1, 1), (2, 2), (3, 3)} K 1 = {1} K 2 = {2} K 3 = {3} Äquivalenzrelationen Aufgabe 1. Lesen Sie im Skript nach was eine Äquivalenzrelation und eine Äquivalenzklasse ist. Gegeben ist die Menge A = {1, 2, 3. Finden Sie 3 Äquivalenzrelationen auf A und geben

Mehr

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie Theorie der Informatik 17. März 2014 6. Formale Sprachen und Grammatiken Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 6.1 Einführung

Mehr

Relationale Entwurfstheorie

Relationale Entwurfstheorie Relationale Entwurfstheorie Funktionale Abhängigkeiten Normalformen Normalisierung durch Dekomposition Funktionale Abhängigkeiten Def.: Sei R ein Schema, und R. Die funktionale Abhängigkeit gilt, wenn

Mehr

Kapitel 11: Relationale Entwurfstheorie

Kapitel 11: Relationale Entwurfstheorie Kapitel 11: Relationale Entwurfstheorie Ziele: - Charakterisierung "guter" relationaler Schemata - jede Relation entspricht genau einer Objektmenge - eventuell unter Einbezug von N:1- oder 1:1-Relationships

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Sommersemester 2016 20.04.2016 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt 1. Terminologie 2. Endliche Automaten und reguläre Sprachen

Mehr

2. Übungsblatt 3.0 VU Datenmodellierung

2. Übungsblatt 3.0 VU Datenmodellierung 2. Übungsblatt 3.0 VU Datenmodellierung 15. Mai 2012 Allgemeines In diesem Übungsteil sollten Sie Aufgabenstellungen aus den Bereich SQL und Normalformentheorie bearbeiten. Lösen Sie die Beispiele eigenständig,

Mehr

Normalformen: Sinn und Zweck

Normalformen: Sinn und Zweck Normalformen: Sinn und Zweck Redundanz und Inkonsistenz vermeiden Anomalien vermeiden Verlustlose Zerlegungen finden Abhängigkeiten bewaren NF2 und NF3 behandeln das Verhältnis zwischen Schlüsselund Nichtschlüssel-

Mehr

Datenbanken. Rückblick: Datenbank-Entwurfsprozess. Semantische Datenmodellierung (vgl. Kapitel 2)

Datenbanken. Rückblick: Datenbank-Entwurfsprozess. Semantische Datenmodellierung (vgl. Kapitel 2) Rückblick: Datenbank-Entwurfsprozess Semantische Datenmodellierung (vgl. Kapitel 2) Überführung des semantischen Datenmodells in das relationale Modell (vgl. Kapitel 3) Das relationale Modell wird in eine

Mehr

Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen

Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 18.4. 2012 176 Automatentheorie und formale Sprachen VL 5 Reguläre und nichtreguläre Sprachen Kathrin Hoffmann 18. Aptil 2012 Hoffmann (HAW

Mehr

Grundlagen von Datenbanken. B-Bäume, B*-Bäume Normalisierung

Grundlagen von Datenbanken. B-Bäume, B*-Bäume Normalisierung Grundlagen von Datenbanken B-Bäume, B*-Bäume Normalisierung B-Bäume Definition: Seien k, h ganze Zahlen, h > 0, k > 0. Ein B-Baum B der Klasse τ(k,h) ist entweder ein leerer Baum oder ein geordneter Suchbaum

Mehr

Formalisierung von Sudoku Formalisieren Sie das Sudoku-Problem:

Formalisierung von Sudoku Formalisieren Sie das Sudoku-Problem: Formalisierung von Sudoku Formalisieren Sie das Sudoku-Problem: 4 4 4 4 4 1 1 1 1 2 2 3 3 5 5 5 5 5 5 6 6 6 7 7 8 8 9 9 9 9 9 8 6 Verwenden Sie dazu eine atomare Formel A[n, x, y] für jedes Tripel (n,

Mehr

1. Ziel des Datenbankentwurfs

1. Ziel des Datenbankentwurfs 1. Ziel des Datenbankentwurfs Ziel ist der Aufbau eines Modells eines Teilbereiches der wahrnehmbaren Realität und Abbildung dieses Bereichs in Form von Daten, so dass diese nach verschiedensten Kriterien

Mehr

Entwurf redundanzfreier Datenbankschemata

Entwurf redundanzfreier Datenbankschemata Entwurf redundanzfreier Datenbankschemata Udo Kelter 20.10.2005 Zusammenfassung dieses Lehrmoduls Beim Entwurf von Schemata für relationale Datenbanken können bestimmte Fehler gemacht werden, die entweder

Mehr

Vorkurs Mathematik. Vorlesung 8. Angeordnete Körper

Vorkurs Mathematik. Vorlesung 8. Angeordnete Körper Prof. Dr. H. Brenner Osnabrück WS 2009/2010 Vorkurs Mathematik Vorlesung 8 Angeordnete Körper Definition 8.1. Ein Körper K heißt angeordnet, wenn es eine totale Ordnung auf K gibt, die die beiden Eigenschaften

Mehr

Kapitel 1.5. Ein adäquater Kalkül der Aussagenlogik. Teil 1: Kalküle und Beweisbarkeit und die Korrektheit des Shoenfield-Kalküls

Kapitel 1.5. Ein adäquater Kalkül der Aussagenlogik. Teil 1: Kalküle und Beweisbarkeit und die Korrektheit des Shoenfield-Kalküls Kapitel 1.5 Ein adäquater Kalkül der Aussagenlogik Teil 1: Kalküle und Beweisbarkeit und die Korrektheit des Shoenfield-Kalküls Mathematische Logik (WS 2012/13) Kapitel 1.5: Kalküle 1/30 Syntaktischer

Mehr

Grundlagen von Datenbanken SS 2010

Grundlagen von Datenbanken SS 2010 Grundlagen von Datenbanken SS 2010 2. Formalisierung des relationalen Datenmodells Agenda: Prof. Dr. Stefan Böttcher Universität Paderborn mit Material von Prof. Dr. Gregor Engels Das Relationenmodell

Mehr

Einführung Datenbanken: Normalisierung

Einführung Datenbanken: Normalisierung Einführung Datenbanken: Normalisierung Für die Kursverwaltung einer VHS hat der Datenbank-Programmierer ein ER-Modell entworfen: Entitätstyp Entitäten Attribute Attributsausprägungen Kurse Teilnehmer Dozenten

Mehr

Ersetzbarkeitstheorem

Ersetzbarkeitstheorem Ersetzbarkeitstheorem Die Abgeschlossenheit läßt sich auch folgendermaßen formulieren: Ersetzbarkeitstheorem Seien F und G Formeln mit F G. SeienH und H Formeln, so daß H aus H hervorgeht, indem ein Vorkommen

Mehr

Musterlösung zur Finalklausur Datenbanksysteme am

Musterlösung zur Finalklausur Datenbanksysteme am Musterlösung zur Finalklausur Datenbanksysteme am 5.2.2003 Aufgabe 1 a) Anfragen: (20 Punkte) i.suchen Sie die Stücke (Titel), die Komponist Lennon erstellt hat und von der Musikfirma EMI veröffentlicht

Mehr

Kapitel 7 Dr. Jérôme Kunegis. Logische Kalküle. WeST Web Science & Technologies

Kapitel 7 Dr. Jérôme Kunegis. Logische Kalküle. WeST Web Science & Technologies Kapitel 7 Dr. Jérôme Kunegis Logische Kalküle WeST Web Science & Technologies Lernziele Grundideen des Domain-Relationenkalküls (DRK) und des Tupel-Relationenkalküls (TRK) Relationale Datenbank als Formelmenge

Mehr

10.2 Linearkombinationen

10.2 Linearkombinationen 147 Vektorräume in R 3 Die Vektorräume in R 3 sind { } Geraden durch den Ursprung Ebenen durch den Ursprung R 3 Analog zu reellen Vektorräumen kann man komplexe Vektorräume definieren. In der Definition

Mehr

Wirtschaftsinformatik

Wirtschaftsinformatik Wirtschaftsinformatik EWI Übungsveranstaltung 6: Datenbanken III 24. November 2004 Kontrollfragen Was versteht man unter referentieller Integrität? Wie kann referentielle Integrität zerstört werden? Nennt

Mehr

Datenbank Modellierung - Normalisierung

Datenbank Modellierung - Normalisierung Name Klasse Datum 1 Redundanzfreiheit als oberste Regel Ein sauber definiertes Datenmodell muss neben der korrekten Abbildung der realen Situation vor allem frei von allen Redundanzen sein. Dies bedeutet,

Mehr

Übungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17

Übungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 7 Vorlesung Theoretische Grundlagen der Informatik im W 16/17 Ausgabe 17. Januar 2017 Abgabe 31. Januar 2017, 11:00 Uhr (im

Mehr

1. Gruppen. 1. Gruppen 7

1. Gruppen. 1. Gruppen 7 1. Gruppen 7 1. Gruppen Wie schon in der Einleitung erläutert wollen wir uns in dieser Vorlesung mit Mengen beschäftigen, auf denen algebraische Verknüpfungen mit gewissen Eigenschaften definiert sind.

Mehr