18
Normalisierung Referat zur Veranstaltung: Datenbanktechnologie, mit praktischen Übungen in eXist und XQuery Datum: 18. April 2011 (3.Sitzung) Dozent: Daniel Ebner, Diplom Medienwissenschaftler Teilnehmer: Domenico Strigari

Normalisierung

  • Upload
    maina

  • View
    65

  • Download
    0

Embed Size (px)

DESCRIPTION

Normalisierung. Referat zur Veranstaltung : Datenbanktechnologie, mit praktischen Übungen in eXist und XQuery Datum: 18. April 2011 (3.Sitzung) Dozent: Daniel Ebner, Diplom Medienwissenschaftler Teilnehmer: Domenico Strigari. Was ist eine Redundanz?. - PowerPoint PPT Presentation

Citation preview

Page 1: Normalisierung

Normalisierung

Referat zur Veranstaltung: Datenbanktechnologie, mit praktischen Übungen in eXist und XQuery

Datum: 18. April 2011 (3.Sitzung)Dozent: Daniel Ebner, Diplom Medienwissenschaftler

Teilnehmer: Domenico Strigari

Page 2: Normalisierung

Was ist eine Redundanz?

• Eine Redundanz bezeichnet das mehrfache Vorkommen von Daten in einer Datenbank oder einem anderen Datenbehältnis. Redundanzen können ohne Informationsverlust weggelassen werden.

Vorkommen von AnomalienIneffiziente Nutzung von Speicherressourcen

Page 3: Normalisierung

Anomalien bei Rel. Datenbanken

• Änderungs-Anomalie• Lösch-Anomalie• EinfügeanomalieBei Anomalien handelt sich im Zusammenhang

der Rel. Datenbanken um Abhängigkeiten! Art. Nr Bezeichnung Kategorie1 Pizza Salami Pizza2 Pizza Bolognese Pizza3 Käsecracker Snacks

Page 4: Normalisierung

Definition Normalisierung

• Der Begriff Normalisierung stammt von den „Normal Formeln“ und bedeutet Korrektur oder Gesetzmäßigkeit. Die einzelnen Schritte des Normalisierungsprozesses werden auch „Normal Formeln“ genannt.

• Es gibt insgesamt 5 Normalformen, wobei die ersten 3 Normalformen üblich sind.

Page 5: Normalisierung

Ziele der Normalisierung

• Vermeidung von Redundanzen• Vereinfachtes relationales Datenbankmodell• Wartung der Datenbanken forcieren• Unnötigen Speicherbedarf eliminieren• Erweiterung der Datenbank vereinfachen

Der Informationsgehalt der Datenbank sollte bestehen bleiben!

Page 6: Normalisierung

Wichtige Begriffe

Ein Primärschlüssel ist ein Attribut zu eindeutigen Identifizierung aller anderen Attribute

Ein Fremdschlüssel bezeichnet ein Attribut, welches gleichzeitig Nichtschlüsselattribut der einen Tabelle und Schlüsselattribut der anderen ist.

Page 7: Normalisierung

Beispiel: Bücherdatenbank

Wir erstellen eine Datenbank für eine Bibliothek mit folgenden Informationen: ISBN, Buchtitel, Ausleihdatum, Kunden-ID, Kundenname, Kundenanschrift.

Page 8: Normalisierung

Unnormalisierte Form

ISBN -Nummer Buchtitel Bestand Kunde

978-3-86680-133-9 „Die Räuber“ 2 001 ; Krause; Riethof 38; 51379 Leverkusen010;Frese; Brücke 5; 50667 Köln

978-3-86680-111-9 „Der Prozess“ 1 011;Albrecht; Bachstraße 18; 50670 Köln001; Krause; Riethof 38; 50667 Köln

Page 9: Normalisierung

1. Normalform

Eine Tabelle befindet sich in der 1. Normalformwenn folgende Aussagen zutreffen:

In jedem Datenfeld steht nur ein WertDie einzelnen Datenfelder enthalten keine

Aufzählungen Atomare Eigenschaft

Page 10: Normalisierung

1. Normalform

ISBN-Nr. Buchtitel Ausleihdatum Kundennr. Name Straße PLZ Ort

978-3-86680-133-9 „Die Räuber“ 11.4.2011 001 Krause Riethof 38 51379 Leverkusen

978-3-86680-133-9 „Die Räuber“ 10.4.2011 010 Frese Brücke 5 50667 Köln

978-3-86680-111-9 „Der Prozess“ 20.4.2011 011 Albrecht Bachstr. 18 50670 Köln

978-3-86680-111-9 „Der Prozess“ 21.4.2011 010 Frese Brücke 5 50667 Köln

Die ISBN-Nr und die Kundennr. bezeichnen einen zusammengesetzten Schlüssel, der alle Nichtschlüsselattribute definiert.

Page 11: Normalisierung

2. Normalform

Eine Tabelle befindet sich in der 2. Normalformwenn folgende Affirmationen zutreffen:

Alle Nichtschlüsselattribute voll vom Primärschlüssel abhängen

Sofern ein zusammengesetzter Schlüssel vorhanden ist, werden die Attribute, die nur von einem Teil des zusammengesetzten Schlüssels abhängen ausgegliedert

Page 12: Normalisierung

2. Normalform (Relation Übersicht)

Die ISBN-Nummer und die Kundennr. stellen in dieser Relation die Schlüsselattribute dar. Beide Schlüssel werden zur eindeutigen Identifikation des Ausleihdatums benötigt.

ISBN-Nr. Kundennr. Ausleihdatum

978-3-86680-133-9 001 11.4.2011

978-3-86680-133-9 010 10.4.2011

978-3-86680-111-9 011 20.4.2011

978-3-86680-111-9 010 21.4.2011

Page 13: Normalisierung

2. Normalform (Relation Kunden)

Kundennr. Name Straße PLZ Ort

001 Krause Riethof 38 51379 Leverkusen

010 Frese Brücke 5 50667 Köln

011 Albrecht Bachstr. 18 50670 Köln

Page 14: Normalisierung

2. Normalform (Relation Bücher)

ISBN-Nr. Buchtitel

978-3-86680-133-9 „Die Räuber“

978-3-86680-111-9 „Der Prozess“

Page 15: Normalisierung

3. Normalform

Eine Tabelle befindet sich in der dritten Normalform, wenn zwischen den Spalten, die keine Primärschlüssel bilden, keine Abhängigkeiten mehr bestehen.

Page 16: Normalisierung

3. Normalform

ISBN-Nr. Buchtitel978-3-86680-133-9 „Die Räuber“

978-3-86680-111-9 „Der Prozess“

Kundennr. Name Straße PLZ Ort

001 Krause Riethof 38 51373 Leverkusen

010 Frese Brücke 5 50667 Köln

011 Albrecht Bachstr. 18 50670 Köln

ISBN-Nr. Kundennr. Ausleihdatum

978-3-86680-133-9 001 11.4.2011

978-3-86680-133-9 010 10.4.2011

978-3-86680-111-9 011 20.4.2011

978-3-86680-111-9 010 21.4.2011

PLZ Ort51373 Leverkusen

50667 Köln

50670 Köln

Relation Kunden

Relation Übersicht

Relation Bücher

Relation Ort

Page 17: Normalisierung

Nützliche MySQL BefehleInner Join: Verknüpfung zweier Tabellen nach

Ihren SpalteneinträgenAusleih-ID Anzahl Bücher Kunden-ID

1 2 011

2 1 005

3 5 011

Kunden-ID Name

011 Schmidt

005 Müller

SELECT SUM(ü.anzahl), k.kundenFROM übersicht üINNER JOIN kunden k ON (ü.pr_id = k.id)GROUP BY k.kunden

SUM(ü.anzahl) Name

7 Schmidt

1 Müller

Page 18: Normalisierung

Vielen Dank für Ihre Aufmerksamkeit!