9
BüroBedarfKG Bahnhofstr.37 48653 Coesfeld Büro D esign G m bH Kundennum m er: 1223 Feldbergstr.21 R echnungsnum m er 123/01 55345 Köln Datum : 04.03.2002 RECHNUNG Artikel- num m er Artikelbezeichnung Preis/Einheit Stückzahl Gesam t- preis 10001 N oN am e CD-RO M 0,49 € 100 49,00 € 10050 Toner 54,00 € 2 108,00 € 10402 Etiketten 12,50 € 10 125,00 € Netto: 282,00 € + 16% M wSt: 45,12 € Brutto 327,12 € Bitte überw eisen Sie den Betrag aufeines unsererKonten innerhalb von 14 Tagen netto ohne Abzug Bei Zahlung bitte angeben. Normalisierung nach Edgar. F. CODD (1970 ispiel Rechnung eilausschnitt der realen Welt) Wie sollen Daten gespeichert werden? Zielsetzung: Redundanzvermeidung durch Aufspalten der Datenelemente in logische Einheiten (Tabellen)

Normalisierung nach Edgar. F. CODD (1970)

  • Upload
    nuri

  • View
    28

  • Download
    0

Embed Size (px)

DESCRIPTION

Normalisierung nach Edgar. F. CODD (1970). Beispiel Rechnung (Teilausschnitt der realen Welt). Wie sollen Daten gespeichert werden? Zielsetzung: Redundanzvermeidung durch Aufspalten der Datenelemente in logische Einheiten (Tabellen). Normalisierung nach Edgar. F. CODD (1970). Probleme: - PowerPoint PPT Presentation

Citation preview

Page 1: Normalisierung nach Edgar. F. CODD (1970)

BüroBedarf KGBahnhofstr. 37

48653 Coesfeld

Büro Design GmbH Kundennummer: 1223Feldbergstr. 21 Rechnungsnummer 123/01

55345 Köln

Datum: 04.03.2002

RECHNUNG

Artikel-nummer Artikelbezeichnung Preis/Einheit Stückzahl

Gesamt-preis

10001 NoName CD-ROM 0,49 € 100 49,00 € 10050 Toner 54,00 € 2 108,00 € 10402 Etiketten 12,50 € 10 125,00 €

Netto: 282,00 € + 16% MwSt: 45,12 € Brutto 327,12 €

Bitte überweisen Sie den Betrag auf eines unserer Konten innerhalb von 14 Tagennetto ohne Abzug

Bei Zahlung bitte angeben.

Normalisierung nach Edgar. F. CODD (1970)

Beispiel Rechnung (Teilausschnitt der realen Welt)

Wie sollen Daten gespeichert werden?

Zielsetzung: Redundanzvermeidung durch Aufspalten der Datenelemente in logische Einheiten (Tabellen)

Page 2: Normalisierung nach Edgar. F. CODD (1970)

Rechnung unnormalisiertKundennummerKundennameKundenadresseRNRDatumNettoANRPos1(10001)ArtBezPos1 (NoName CD-ROM)StückzahlPos1 (100)PreisProEinheitPos1 (0,49 €)ANRPos2 (10050)ArtBezPos2 (Toner)StückzahlPos2 (2)PreisProEinheitPos2 (54,00 €)ANRPos3 (10402)ArtBezPos3 (Etiketten)StückzahlPos3 (10)PreisProEinheitPos3 (12,50 €)

Normalisierung nach Edgar. F. CODD (1970)

Probleme:

Artikeldaten sind nur dann vorhanden, wenn Rechnung vorliegt:

Einfügeanomalie

Wird Kundenrechnung gelöscht können alle Daten verloren gehen:

Löschanomalie

Kundenanschrift muss in jeder Rechnung geändert werden:

Änderungsanomalie

Felder wiederholen sichWiederholungsgruppen

Feld Kundenadresse ist zu allgemein (genauer: Name, Strasse, PLZ, Ort etc)

Atomare Felder

Page 3: Normalisierung nach Edgar. F. CODD (1970)

Lösung:

Keine Wiederholungsgruppen durch Abspalten der Tabelle Positionen(ArtNR, RNR, ArtBez, Stueckzahl, PreisProEinheit)

Normalisierung nach Edgar. F. CODD (1970)

Rechnung 1NF 1 Positionen 1NFRNR ArtNRKundennummer RNRName n ArtBezVorname StueckzahlPostleitzazhl PreisProEinheitOrtStrasseHausnummerDatumNetto

1. Normalform

Eine Tabelle liegt in der ersten Normalform vor, wenn in jeder Zelle nur ein Wert steht und keine Wiederholungsgruppen auftauchen.

Eindeutige Felder (atomare Felder) durch Zerlegung des Feldes Adresse(KundenNR, Name, Vorname, PLZ, Ort, Strasse, Hausnummer)

Page 4: Normalisierung nach Edgar. F. CODD (1970)

Normalisierung nach Edgar. F. CODD (1970)

Rechnung 1NF 1 Positionen 1NFRNR ArtNRKundennummer RNRName n ArtBezVorname StueckzahlPostleitzazhl PreisProEinheitOrtStrasseHausnummerDatumNetto

Problem:

Artikelbezeichnung und PreisProEinheit sind nicht abhängig vom gemeinsamen Schlüssel ArtNR & RNR

Page 5: Normalisierung nach Edgar. F. CODD (1970)

Lösung:

Abspaltung einer Artikeltabelle (ArtNR, ArtBez, PreisProEinheit)

Normalisierung nach Edgar. F. CODD (1970)

Rechnung 2NF 1 Positionen 2NF n 1 Artikel 2NFRechNR ArtNR ArtNRKundenNR RNR ArtBezName n Stueckzahl PreisProEinheitVornamePostleitzahlOrtStrasseHausnummerDatumNetto

2. Normalform

Eine Tabelle liegt in der zweiten Normalform vor, wenn sie sich in der 1. NF befindet und jedes (Nicht-Schlüssel-) Feld vom Gesamt-schlüssel und nicht bereits von einem Teil des Gesamt-schlüssels abhängig ist.

Page 6: Normalisierung nach Edgar. F. CODD (1970)

Normalisierung nach Edgar. F. CODD (1970)

Problem:

Kundendaten sind nicht abhängig von der RechNR sondern von der KundenNR.

Rechnung 2NF 1 Positionen 2NF n 1 Artikel 2NFRechNR ArtNR ArtNRKundenNR RNR ArtBezName n Stueckzahl PreisProEinheitVornamePostleitzahlOrtStrasseHausnummerDatumNetto

Page 7: Normalisierung nach Edgar. F. CODD (1970)

Normalisierung nach Edgar. F. CODD (1970)

Lösung:

Abspalten einer Kundentabelle(KundenNR, Name, Vorname, PLZ, Ort, Strasse, Hausnummer)

Rechnung 2NF 1 Positionen 2NF n 1 Artikel 2NFRechNR ArtNR ArtNRKundenNR RechNR ArtBezDatum n n Stueckzahl PreisProEinheitNetto

1 Kunde 3NFKundenNRNameVornamePostleitzahlOrtStrasseHausnummer

3. Normalform

Eine Tabelle liegt in der dritten Normalform vor, wenn sie sich in der 2. NF befindet und jedes (Nicht-Schlüssel-) Feld direkt vom Primärschlüssel abhängig ist.

Page 8: Normalisierung nach Edgar. F. CODD (1970)

Probleme:Keine, es sei denn, dass abgespaltene Tabellen nicht in der 3. NF sind!!!

Rechnung 2NF 1 Positionen 2NF n 1 Artikel 2NFRechNR ArtNR ArtNRKundenNR RechNR ArtBezDatum n n Stueckzahl PreisProEinheitNetto

1 Kunde 3NFKundenNRNameVornamePostleitzahlOrtStrasseHausnummer

Normalisierung nach Edgar. F. CODD (1970)

1

n

Orte

PLZ

Ort

Page 9: Normalisierung nach Edgar. F. CODD (1970)

ZUSAMMENFASSUNG:

Atomare Felder, keine Wiederholungsgruppen Keine Abhängigkeiten von Gesamtschlüsseln Keine Abhängigkeiten von Nichtschlüsselfeldern

o d e r : g e z i e l t e s H i n s c h a u e n

Rechnung 2NF 1 Positionen 2NF n 1 Artikel 2NFRechNR ArtNR ArtNRKundenNR RechNR ArtBezDatum n n Stueckzahl PreisProEinheitNetto

1 Kunde 3NFKundenNRNameVornamePostleitzahlOrtStrasseHausnummer

Normalisierung nach Edgar. F. CODD (1970)