Datenbanken Normalisierung

Slides:



Advertisements
Ähnliche Präsentationen
Rückblick SELECT mit mehreren Relationen Inner Join CROSS JOIN
Advertisements

Datenbankdesign mit ACCESS.
Datenbanken Beispiel: Musikverwaltungsdatenbank Daten: Musikstück
Datenbank – Datenbanksystem
Relationentheorie AIFB SS Transitive (funktionale) Abhängigkeiten Transitive (funktionale) Abhängigkeiten (1|3) Geg.: r: (U | F); A,
Prof. Dr. T. Kudraß1 Logischer DB-Entwurf. Prof. Dr. T. Kudraß2 Entwurf eines relationalen DB-Schemas Ziel: –Regeln für die Umsetzung eines ER-Modells.
Relationaler Datenbankentwurf (II)
Normalisierung II Lehr- und Forschungseinheit Datenbanken und Informationssysteme.
[01] - ERM Modellierung I Basiselemente von E-R-Diagrammen kennen
Normalisierung nach Edgar. F. CODD (1970)
Microsoft Access – Einführung – Allgemeine Technologien I
Algorithmen und Komplexität
Franziska Schmidt Sarah Ahlheit
Datenbankdesign und Normalisierung
Blockseminar Allgemeine Technologien II März 2009
Daten bank St. Wiedemann.
Datenbankentwurf mit Hilfe des ER-Modells entwickeln
Datenbanken Christof Rumpf
Normalformen Normalisieren Schlüssel
6 Normalformen Normalisieren Schlüssel
Was ist eine Datenbank? ermöglicht die Eingabe von Daten
Datenmodellierung - Aufbau einer Datenbank -
© Katharina Brachmann Normalformen Oldenbourg S137, Klett S117
Buch S70ff (Informatik I, Oldenbourg-Verlag)
Relationentheorie AIFB SS Algorithmen zur Bildung von 3NF-Relationsschemata Algorithmen zur Bildung von 3NF-Relationsschemata (2|8) (2)Synthese.
Relationale Datenbankmodelle
Relationale Datenbanken II
Einführung in Datenbanken
Access XP Einführung Silvie Charif ©
Access Aufbau Charts © 2000, Klemens Konopasek.
Einführung Access Einführung und Datenbankgrundbegriffe
Datenbank-entwicklungsprozess
Access 2000 Willkommen im Access-Kurs Oliver Mochmann.
SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R Vorlesung #5 Relationale Entwurfstheorie.
Normalisierung Referat zur Veranstaltung: Datenbanktechnologie, mit praktischen Übungen in eXist und XQuery Datum: 18. April 2011 (3.Sitzung) Dozent: Daniel.
PHP und MYSQL am FUNKTIONEN (Wiederholung) Klassen Objekte Anwendungsbeispiele MYSQL Theorie mehrerer Tabellen Historisch Kulturwissenschaftliche.
Datenbanken Dantenbanksystem Data Base System Datenbasis (Daten)
SS 2011 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung #5 Relationale Entwurfstheorie.
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
(D.h. „Hallo MausFans!“ auf Japanisch).
Freiwillige Feuerwehr der Stadt Perg
Das relationale Modell
verstehen planen bearbeiten
Normalisierungsprozess
Datenbank Wandertag Situationsbeschreibung
ADAT©2004,2006 Dipl. - Ing. Walter SabinSeite: 47 Version 1.0a Normalisierung Optimierung des Datenmodells – möglichst wenig Redundanzen –Vermeidung von.
Dritte Normalform Relationstyp R(A1,...,An) und Menge  von FDs und MVDs für R sei im Folgenden fest vorgegeben. R ist in dritter Normalform (3NF), wenn.
Datenbanken Maya Kindler 6c.
Was ist eine Datenbank „MS Access“
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #5 Relationale Entwurfstheorie.
Datenbanken Einführung
Datenbanken Datenbank-Entwurf
Datenbanken abfragen mit SQL
Entität Attribute Beziehung AUTOR CD M 1 N leihen erstellen N verfasst
Betriebliche Anwendung der Datenverarbeitung 2aFD
Vom Konzept zur Datenbank
BHAK/BHAS 1 Salzburg KIDM 2ASBS Schuljahr 2004/05
CD BÜCHER FREUNDE INTERPRETAUTOR Entität Attribute Beziehung Preis TitelCd# Musikricht- ung von bis Handy PLZ Ort Straße Gdatum Vorname Nachname.
IS: Datenbanken, © Till Hänisch 2000 Entwurfstheorie Normalisierung oder "Wie man sich Ärger erspart"
IS: Datenbanken, © Till Hänisch 2000 Company: Entity types DEPARTMENT Name, Number, {Location},Manager, Mgr-Start- Date PROJECT Name, Number, Location,
Lineare Optimierung Nakkiye Günay, Jennifer Kalywas & Corina Unger Jetzt erkläre ich euch die einzelnen Schritte und gebe Tipps!
Veranstaltung: Datenbanken I Dozent: Ioannis Papakostas Belegarbeit 6 Online-Bestellung von Büchern Stefan Rüschenberg (Matrikel-Nr.: ) Sebastian.
LK Informatik - Datenbanken Normalisierung von Datenbanken April/Mai 2004 (2009) Paul-Natorp-Oberschule.
SQL Basics Schulung –
Anforderungen an ein Datenbanksystem
Redundanz.
Vorlesung #5 Relationale Entwurfstheorie
Vorlesung #5 Überführung (Fortsetzung) / Normalformen
ER-Modell und Relationales Schema
 Präsentation transkript:

Datenbanken Normalisierung N. Nazar S. Baldes

Schlechtes Datenbank-Design Beispiel Schlechtes Datenbank-Design Probleme: Die Datenbank enthält redundante Daten. Die Daten der Kunden mit mehreren offenen Aufträgen werden auch mehrfach abgespeichert. Dies verschenkt Speicherplatz. Die Datenbank enthält widersprüchliche Daten. AuftragNr 3,5  PLZ, Eingabefehler? AuftragNr 2,6  Rechtsform,Tippfehler / Rechtsform geändert?

Schlechtes Datenbank-Design Beispiel Schlechtes Datenbank-Design Weitere, nicht sofort ersichtliche Problematiken: Löschanomalie: Die Daten eines Kunden verschwinden, wenn der letzte Auftrag des Kunden gelöscht wird. Einfügeanomalie: Einen neuen Kunden kann man nur dann eintragen, wenn er einen Auftrag erteilt. Änderungsanomalie: Wenn man Daten eines Kunden ändern will, so muss man das so häufig machen, wie dieser Kunde Aufträge in der Datenbank hat.

Besseres Datenbank-Design Beispiel Besseres Datenbank-Design Tabelle Kunde mit Primärschlüssel KundeNr Tabelle Auftrag mit Primärschlüssel AuftagsNr und Fremdschlüssel KundenNr

Normalisierung Die Normalisierung bezweckt die redundanz- und damit anomaliefreie Speicherung von Informationen innerhalb der Tabellen. Dabei werden 3 verschiedenen Stufen unterschieden: 1. Normalform 2. Normalform 3. Normalform

1. Normalform Eine Tabelle befindet sich in der ersten Normalform, wenn jedes Datenfeld atomar ist. ( Datenfelder enthalten nur einen einzelnen Eintrag.  Keine Wiederholungen von Attributen.) Umformungen 1. || Album, Interpret ||  || Album || Interpret || 2. Not That Kind || Anastacia || {Not That Kind, I'm Outta Love, Cowboy & Kisses}  Not That Kind || Anastacia || Not That Kind Not That Kind || Anastacia || I'm Outta Love Not That Kind || Anastacia || Cowboy & Kisses c

1. Normalform Alle Datenfelder sind atomar Nicht-atomar: Album und Interpret in einer Spalte Nicht-atomar: Mehrere Titel In erster Normalform Alle Datenfelder sind atomar

Übung 1 Überführen Sie die folgende Tabelle in die erste Normalform. Petra Helmut Gregor Heinz Vorname Hornbäk Hamburg Ort knowware 235, 789 SQL, PHP Bilke rororo 345 SQL Meier 345, 567 SQL, C++ Kuhlmann 123, 234 Lachen, Ernst sein ist alles Erhard Verlag ISBN Titel Autor

Übung 1 Lösungsvorschlag Petra Helmut Gregor Heinz Vorname rororo Hamburg 234 Ernst sein ist alles Erhard 567 C++ Kuhlmann 345 SQL knowware Hornbäk 235 Bilke Meier Ort 789 PHP 123 Lachen Verlag ISBN Titel Autor Die Tabelle ist in erster Normalform. Alle Datenfelder sind atomar.

Funktionale Abhängigkeit Definition Ein Attribut B ist von einem Attribut A funktional abhängig, wenn zu jedem Wert aus A genau ein Wert aus B existiert. Wir schreiben dann A→B (kenne A → kenne B) Bemerkung: Alle Attribute sind vom Gesamtschlüssel funktional abhängig.

Funktionale Abhängigkeit Beispiel Hier gelten die folgenden funktionalen Abhängigkeiten: KName,LName → KFläche,LFläche,Prozent Kname → KFläche Lname → LFläche

Übung 2 Welche der folgenden funktionellen Abhängigkeiten werden durch die Tabelle erfüllt? Reifentyp,Menge → ReifenID Atnr → Auftrag Atnr → Reifentyp Menge → Reifentyp Reifentyp → Menge ReifenID → Atnr ReifenID → Auftrag ReifenID,Atnr → Reifentyp,Menge,Auftrag ReifenID Reifentyp Menge Atnr Auftrag 1 Michelin 30 AuftragA 2 AuftragB 3 AuftragC Pirelli 200 Dunlop 150 4 Good Year 300 5 Seat

Übung 2 Lösung Welche der folgenden funktionellen Abhängigkeiten werden durch die Tabelle erfüllt? Reifentyp, Menge → ReifenID Atnr → Auftrag Atnr → Reifentyp Menge → Reifentyp Reifentyp → Menge ReifenID → Atnr ReifenID → Auftrag ReifenID,Atnr → Reifentyp,Menge,Auftrag ReifenID Reifentyp Menge Atnr Auftrag 1 Michelin 30 AuftragA 2 AuftragB 3 AuftragC Pirelli 200 Dunlop 150 4 Good Year 300 5 Seat

2. Normalform Eine Tabelle befindet sich in der zweiten Normalform, wenn sie  in 1. Normalform ist und  kein Attribut ist funktional abhängig von einem Teilschlüssel. (Teilschlüssel → Attribut) Alternative Formulierung: Alle Attribute sind nur vom Gesamtschlüssel funktional abhängig. Veranschaulichung: Zusammenhängende Information wird in eine eigene Tabelle ausgelagert.

2. Normalform Beispiel Kname → KFläche Lname → LFläche In zweiter Normalform Zusammenhängende Informationen werden in eigene Tabellen ausgelagert.

Übung 3 Der Primärschlüssel ist ein Kombinationsschlüssel aus Autor und ISBN. Erfüllt die folgende Tabelle die zweite Normalform? Falls nicht, erstellen Sie diese. Helmut Petra Gregor Heinz Vorname rororo Hamburg 234 Ernst sein ist alles Erhard 567 C++ Kuhlmann 345 SQL knowware Hornbäk 789 PHP Bilke 235 Ort Meier 123 Lachen Verlag ISBN Titel Autor

Übung 3 Lösungsvorschlag Die 2. Normalform ist nicht erfüllt, da der Titel nur von der ISBN abhängig ist und nicht von der Kombination aus Autor und ISBN. Petra Bilke … Gregor Kuhlmann Heinz Erhard Vorname Autor Hornbäk knowware Bilke PHP 789 SQL 235 rororo Verlag Hamburg Kuhlmann C++ 567 345 Erhard Ernst sein ist alles 234 Lachen 123 Ort Autor (FS) Titel ISBN

3. Normalform Eine Tabelle befindet sich in der dritten Normalform, wenn sie  in 2. Normalform ist und  kein Nichtschlüssel-Attribut ist funktional abhängig von einem anderen. (Attribut → Attribut) Veranschaulichung: Kein Attribut kann den Wert eines anderen Attributes "voraussagen".

3. Normalform Beispiel Attribut → Attribut LCode → Fläche In dritter Normalform Attribut → Attribut

Übung 4 Prüfen Sie, ob die folgende Tabelle die dritte Normalform erfüllt? Falls nicht, erstellen Sie diese. Hornbäk knowware Bilke PHP 789 SQL 235 rororo Verlag Hamburg Kuhlmann C++ 567 345 Erhard Ernst sein ist alles 234 Lachen 123 Ort Autor (FS) Titel ISBN

Übung 4 Lösungsvorschlag Die Tabelle liegt nicht in der 3. Normalform vor, da der Ort vom Verlag abhängt. knowware Bilke PHP 789 SQL 235 rororo Verlag (FS) Kuhlmann C++ 567 345 Erhard Ernst sein ist alles 234 Lachen 123 Autor (FS) Titel ISBN … Hornbäk knowware Hamburg rororo Ort Verlag

Übung 5 Überführen Sie die folgende Tabelle in die dritte Normalform. Bestimmen Sie dazu zuerst die funktionalen Abhängigkeiten.

Übung 5 Lösungsvorschlag funktional abhängig

Übung 6 Komplex Überführen Sie die folgende Tabelle in die dritte Normalform. Bestimmen Sie dazu zuerst die funktionalen Abhängigkeiten.

Übung 6 Lösungsvorschlag Es gelten die folgenden funktionalen Abhängigkeiten: Kdnr → name, vname, vorwahl, tel, str, plz, ort, bland plz → vorwahl, ort, bland vorwahl → ort, bland Ergebnis der 3NF-Zerlegung: Kunden(kdnr,name,vname,str,tel,plz) Postleitzahl(plz,vorwahl) Vorwahl(vorwahl,ort,bland)

Zusammenfassung Normalisierung verhindert Redundanz und damit Anomalien. 1NF: Alle Datenfelder sind atomar 2NF: Teilschlüssel → Attribut 3NF: Attribut → Attribut

Quellen Ahmad Nessar Nazar: Unterrichtsunterlagen Fabian Hauck: Unterrichtsunterlagen Stephan Baldes: Unterrichtsversuch Hr. Schlaich, 2007