26.01.2013 Aufrufe

Übung zur Normalisierung 1 - Wirtschaftsinformatik HTW Berlin

Übung zur Normalisierung 1 - Wirtschaftsinformatik HTW Berlin

Übung zur Normalisierung 1 - Wirtschaftsinformatik HTW Berlin

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 1<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 1<br />

Redundanzen durch funktionale Abhängigkeit der Bezeichnung von Art_Nr.<br />

Art_Nr Bezeichnung Besteller B_Datum Menge<br />

0105 Zucker Meyer 03.06.00 200<br />

0105 Zucker Schulze 03.06.00 180<br />

0237 Mehl Meyer 05.06.00 250<br />

0105 Zucker Müller 06.06.00 150<br />

2356 Salz Moppel 06.06.00 080<br />

2356 Salz Meyer 07.06.00 060<br />

0105 Zucker Meyer 08.06.00 100


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 2<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 1<br />

Redundanzen durch funktionale Abhängigkeit der Bezeichnung von Art_Nr =<br />

Verletzung der 2NF.<br />

Art_Nr Bezeichnung Besteller B_Datum Menge<br />

0105 Zucker Meyer 03.06.00 200<br />

0105 Zucker Schulze 03.06.00 180<br />

0237 Mehl Meyer 05.06.00 250<br />

0105 Zucker Müller 06.06.00 150<br />

2356 Salz Moppel 06.06.00 080<br />

2356 Salz Meyer 07.06.00 060<br />

0105 Zucker Meyer 08.06.00 100<br />

Art_Nr Bezeichnung<br />

0105 Zucker<br />

0237 Mehl<br />

2356 Salz<br />

• Die Spalte Bezeichnung wird gemeinsam mit<br />

der Schlüsselspalte Art_Nr in eine neue<br />

Tabelle gespeichert.<br />

• Doppelte Zeilen (Tupel) in der neuen Tabelle<br />

werden eliminiert.


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 3<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 1<br />

Tabellen in 3NF da Menge voll funktional abhängig vom Primärschlüssel<br />

Art_Nr||Besteller||B_Datum und keine transitiven Abhängigkeiten.<br />

Art_Nr Besteller B_Datum Menge<br />

0105 Meyer 03.06.00 200<br />

0105 Schulze 03.06.00 180<br />

0237 Meyer 05.06.00 250<br />

0105 Müller 06.06.00 150<br />

2356 Moppel 06.06.00 080<br />

2356 Meyer 07.06.00 060<br />

0105 Meyer 08.06.00 100<br />

Art_Nr Bezeichnung<br />

0105 Zucker<br />

0237 Mehl<br />

2356 Salz<br />

Tabelle Bestellung (3NF)<br />

Art_Nr ist<br />

Fremdschlüssel mit<br />

Referenz zu Artikel<br />

Tabelle Artikel (3NF)


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 4<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 2<br />

Redundanzen durch mehrfache Wiederholung des Attributs Sprache für eine Person (volle<br />

funktionale Abhängigkeit des Grades von Pers_Nr, Sprache, aber ...).<br />

Pers_Nr Name Vorname Sprache Grad<br />

0105 Marder Monika englisch 2<br />

0105 Marder Monika russisch 3<br />

0234 Hund Hugo französisch 1<br />

0325 Stier Siegfried spanisch 3<br />

0325 Stier Siegfried französisch 3<br />

0325 Stier Siegfried portugisisch 2<br />

2345 Antilope Anita polnisch 3


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 5<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 2<br />

Redundanzen durch mehrfache Wiederholung des Attributs Sprache für eine Person (keine volle<br />

funktionale Abhängigkeit des Namens und Vornamens vom Primärschlüssel) = Verletzung der 2NF.<br />

Pers_Nr Name Vorname Sprache Grad<br />

0105 Marder Monika englisch 2<br />

0105 Marder Monika russisch 3<br />

0234 Hund Hugo französisch 1<br />

0325 Stier Siegfried spanisch 3<br />

0325 Stier Siegfried französisch 3<br />

0325 Stier Siegfried portugisisch 2<br />

2345 Antilope Anita polnisch 3<br />

Pers_Nr Name Vorname<br />

0105 Marder Monika<br />

0234 Hund Hugo<br />

0325 Stier Siegfried<br />

2345 Antilope Anita<br />

• Die Spalten Name, Vorname werden<br />

gemeinsam mit der Schlüsselspalte<br />

Pers_Nr in eine neue Tabelle gespeichert.<br />

• Doppelte Zeilen (Tupel) in der neuen<br />

Tabelle werden eliminiert.


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 6<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 2<br />

Redundanzen durch mehrfache Wiederholung des Attributs Sprache für eine Person (keine volle<br />

funktionale Abhängigkeit des Namens und Vornamens vom Primärschlüssel) = Verletzung der 2NF.<br />

Pers_Nr Sprache Grad<br />

0105 englisch 2<br />

0105 russisch 3<br />

0234 französisch 1<br />

0325 spanisch 3<br />

0325 französisch 3<br />

0325 portugisisch 2<br />

2345 polnisch 3<br />

Pers_Nr Name Vorname<br />

0105 Marder Monika<br />

0234 Hund Hugo<br />

0325 Stier Siegfried<br />

2345 Antilope Anita<br />

Tabelle Sprachen (3NF)<br />

Pers_Nr ist<br />

Fremdschlüssel mit<br />

Referenz zu Person<br />

Tabelle Person (3NF)


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 7<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 3<br />

Redundanzen durch funktionale Abhängigkeit des Attributs Leiter von Abt und durch mehrfache<br />

Wiederholung der Attributsgruppe Sprache, Grad für jede PersNr.<br />

Pers_Nr Name Vorname Geschl Sprache Grad Abt Leiter<br />

023 Muh Magda w engl 2 34 Meier<br />

023 Muh Magda w franz 1 34 Meier<br />

145 Wau Harald m 34 Meier<br />

437 Miau Irene w engl 2 56 Busse<br />

437 Miau Irene w russ 3 56 Busse<br />

759 Quak Andre m engl 3 56 Busse<br />

854 Piep Ursel w franz 2 78 Works


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 8<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 3<br />

Redundanzen durch funktionale Abhängigkeit des Attributs Leiter von Abt und durch mehrfache<br />

Wiederholung der Attributsgruppe Sprache, Grad für jede PersNr.<br />

Pers_Nr Name Vorname Geschl Sprache Grad Abt Leiter<br />

023 Muh Magda w engl 2 34 Meier<br />

023 Muh Magda w franz 1 34 Meier<br />

145 Wau Harald m 34 Meier<br />

437 Miau Irene w engl 2 56 Busse<br />

437 Miau Irene w russ 3 56 Busse<br />

759 Quak Andre m engl 3 56 Busse<br />

854 Piep Ursel w franz 2 78 Works<br />

Pers_Nr Name Vorname Geschl Abt Leiter<br />

023 Muh Magda w 34 Meier<br />

145 Wau Harald m 34 Meier<br />

437 Miau Irene w 56 Busse<br />

759 Quak Andre m 56 Busse<br />

854 Piep Ursel w 78 Works<br />

• Die Spalten Name, Vorname, Geschl,<br />

Abt, Leiter werden gemeinsam mit der<br />

Schlüsselspalte Pers_Nr in eine neue<br />

Tabelle gespeichert.<br />

• Die Zeile 145 wird in der alten Tabelle<br />

gestrichen (keine Fremdsprache).<br />

• Doppelte Zeilen (Tupel) in der neuen<br />

Tabelle werden eliminiert.


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 9<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 3<br />

Redundanzen durch funktionale Abhängigkeit des Attributs Leiter von Abt und durch mehrfache<br />

Wiederholung der Attributsgruppe Sprache, Grad für jede PersNr.<br />

Pers_Nr Sprache Grad<br />

023 engl 2<br />

023 franz 1<br />

437 engl 2<br />

437 russ 3<br />

759 engl 3<br />

854 franz 2<br />

Pers_Nr Name Vorname Geschl Abt Leiter<br />

023 Muh Magda w 34 Meier<br />

145 Wau Harald m 34 Meier<br />

437 Miau Irene w 56 Busse<br />

759 Quak Andre m 56 Busse<br />

854 Piep Ursel w 78 Works<br />

Tabelle Sprachen (3NF)<br />

Pers_Nr ist<br />

Fremdschlüssel mit<br />

Referenz zu Person<br />

Tabelle Person (2NF)<br />

Aber es existiert noch eine<br />

transitive Abhängigkeit der<br />

Spalte Leiter von Abt!


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 10<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 3<br />

Redundanzen durch transitive Abhängigkeit der Spalte Leiter von der Spalte Abt(eilung).<br />

Tabelle Sprachen (3NF) Tabelle Person (2NF)<br />

Pers_Nr Sprache Grad<br />

023 engl 2<br />

023 franz 1<br />

437 engl 2<br />

437 russ 3<br />

759 engl 3<br />

854 franz 2<br />

Pers_Nr Name Vorname Geschl Abt Leiter<br />

023 Muh Magda w 34 Meier<br />

145 Wau Harald m 34 Meier<br />

437 Miau Irene w 56 Busse<br />

759 Quak Andre m 56 Busse<br />

854 Piep Ursel w 78 Works<br />

Abt Leiter<br />

34 Meier<br />

56 Busse<br />

78 Works<br />

Tabelle Abteilung (3NF)<br />

• Die transitiv abhängige Spalte Leiter<br />

wird gemeinsam mit der Bezugsspalte<br />

Abt in eine neue Tabelle gespeichert.<br />

• Abt wird Primärschlüssel.<br />

• Doppelte Zeilen (Tupel) in der neuen<br />

Tabelle werden eliminiert.


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 11<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 3<br />

Redundanzen durch transitive Abhängigkeit der Spalte Leiter von der Spalte Abt(eilung) wurden<br />

beseitigt.<br />

Sprachen (3NF) Person (3NF)<br />

Pers_Nr Sprache Grad<br />

023 engl 2<br />

023 franz 1<br />

437 engl 2<br />

437 russ 3<br />

759 engl 3<br />

854 franz 2<br />

Pers_Nr Name Vorname Abt Geschl<br />

023 Muh Magda 34 w<br />

145 Wau Harald 34 m<br />

437 Miau Irene 56 w<br />

759 Quak Andre 56 m<br />

854 Piep Ursel 78 w<br />

Abteilung (3NF)<br />

Abt Leiter<br />

34 Meier<br />

56 Busse<br />

78 Works


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 13<br />

Student<br />

<strong>Übung</strong> <strong>zur</strong> <strong>Normalisierung</strong> 4<br />

Die Lösung besteht in den nachfolgenden 3 Tabellen in 3NF.<br />

Bitte ermitteln Sie den Lösungsweg!<br />

StudNr Name StGang<br />

2317 Frohsinn, S. WI<br />

3564 Trübsal, F. BW<br />

4567 Dickfell, K. WI<br />

8540 Klarsicht, A. BW<br />

Studiengang Noten<br />

StGang Auskunft<br />

WI 268<br />

BW 145<br />

StudNr Kurs Sem Note<br />

2317 MAT12 S00 1,7<br />

2317 INF06 W00 5,0<br />

2317 INF06 S01 2,3<br />

2317 BW_12 W99 2,0<br />

3564 BW_08 W99 3,3<br />

4567 MAT12 S00 3,0<br />

4567 INF03 S00 2,7<br />

8540 BW_12 S00 1,7<br />

8540 INF13 W00 2,0


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 14<br />

Klausuraufgabe SS 2003<br />

Bringen Sie folgende Relation, die die Artikelsystematik eines Versandhauses enthält, in<br />

die dritte Normalform (3NF), kennzeichnen Sie in geeigneter Weise die referentielle<br />

Integrität zwischen den normalisierten Tabellen (Fremdschlüssel angeben) und<br />

unterstreichen Sie die Primärschlüssel.<br />

ARTIKEL(ANR,NAME,WA,WABEZ,MWST,AG,AGBEZ,LNR,LO,PREIS,MENGE)<br />

Legende: ANR=Artikel-Nummer, NAME=Bezeichnung des Artikels<br />

WA=Warenart (Schlüsselnr.) WABEZ=Bezeichnung der Warenart<br />

MWST=Mehrwertsteuersatz für die Warenart<br />

AG=Artikelgruppe (Schlüsselnr.) AGBEZ= Bezeichnung der Artikelgruppe<br />

LNR= Lagernummer LO= Lagerort<br />

PREIS=Netto-Angebotspreis MENGE=Lagerbestand im Lager<br />

Gehen Sie davon aus, dass ein Artikel immer nur zu einer Artikelgruppe und eine<br />

Artikelgruppe immer nur zu einer Warenart gehören. Ein Artikel kann jedoch in mehreren<br />

Lagern vorrätig sein und natürlich enthält ein Lager in der Regel auch immer mehrere<br />

Artikel.


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 15<br />

Klausuraufgabe SS 2003 Lösung<br />

ARTIKEL(ANR,NAME,WA,WABEZ,MWST,AG,AGBEZ,LNR,LO,PREIS,MENGE)<br />

Legende: ANR=Artikel-Nummer, NAME=Bezeichnung des Artikels<br />

WA=Warenart (Schlüsselnr.) WABEZ=Bezeichnung der Warenart<br />

MWST=Mehrwertsteuersatz für die Warenart<br />

AG=Artikelgruppe (Schlüsselnr.) AGBEZ= Bezeichnung der Artikelgruppe<br />

LNR= Lagernummer LO= Lagerort<br />

PREIS=Netto-Angebotspreis MENGE=Lagerbestand im Lager<br />

ARTIKEL(ANR, NAME, AG, PREIS)<br />

ARTIKELGRUPPE(AG, AGBEZ, WA)<br />

WARENART(WA, WABEZ, MWST)<br />

Beispiel: Darstellung in MS-ACCESS<br />

LAGER(LNR, LO)<br />

LAGERUNG(LNR, ANR, MENGE)


F<strong>HTW</strong> <strong>Berlin</strong> Prof. Dr. Zschockelt Datenbanken (04a)<strong>Normalisierung</strong>-<strong>Übung</strong>.ppt Folie 16<br />

Klausuraufgabe SS 2003 Lösung<br />

ARTIKEL(ANR,NAME,WA,WABEZ,MWST,AG,AGBEZ,LNR,LO,PREIS,MENGE)<br />

Legende: ANR=Artikel-Nummer, NAME=Bezeichnung des Artikels<br />

WA=Warenart (Schlüsselnr.) WABEZ=Bezeichnung der Warenart<br />

MWST=Mehrwertsteuersatz für die Warenart<br />

AG=Artikelgruppe (Schlüsselnr.) AGBEZ= Bezeichnung der Artikelgruppe<br />

LNR= Lagernummer LO= Lagerort<br />

PREIS=Netto-Angebotspreis MENGE=Lagerbestand im Lager<br />

Darstellung in MS-ACCESS

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!