SQL - Normalform bestimmen < Datenbank-Modelle < Schule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 18:33 So 24.06.2007 | Autor: | Haase |
Hi, wäre sehr nett, wenn Ihr mir helfen könntet.
Tabelle(Primärschlüssel sind A,B):
A B C D
-----------
X 100 2 HH
X 101 1 KL
Y 100 2 HH
Y 101 3 KL
Y 102 2 KL
Aufgabe1:
In welcher Normalform liegt die oben genannte Tabelle vor?
Lösung(nicht meine): 1NF weil alle Daten atomar vorliegen, weil aber B -> D nur 1NF und nicht in 2NF.
Ich verstehe warum das in der 1NF ist.
Was ich nicht verstehe, wie ich da jetzt Prüfe ob das in der 2NF ist. Warum ist B -> D? (B von D abhängig?)
Aufgabe2:
Zerlegen Sie die Tabelle so, sodass die dritte Normalform erfüllt ist.
Lösung(nicht meine):
Eine Tabelle mit A,B,C mit PK=A,B
und eine Tabelle mit B,D mit PK=B
Hier verstehe ich das leider nicht.
Vielen Dank im Voraus.
Gruß Haase
|
|
|
|
Hi Haase,
> Tabelle(Primärschlüssel sind A,B):
> A B C D
> -----------
> X 100 2 HH
> X 101 1 KL
> Y 100 2 HH
> Y 101 3 KL
> Y 102 2 KL
> Aufgabe1:
> In welcher Normalform liegt die oben genannte Tabelle vor?
> Lösung(nicht meine): 1NF weil alle Daten atomar vorliegen, weil aber B -> D nur 1NF und nicht in
> 2NF. Ich verstehe warum das in der 1NF ist. Was ich nicht verstehe, wie ich da jetzt Prüfe ob das > in der 2NF ist. Warum ist B -> D? (B von D abhängig?)
B ist ja ein Primärschlüssel. Du hast leider nicht mehr in der Aufgabe zu den sachlichen Zusammenhängen der Aufgabe gepostet (was ist A-D überhaupt?). Dann könnte man sehen, das B von D abhängig wäre (zum Beispiel wenn B ein Auto wäre und D Benzin. Dann wäre eine Abhängigkeit gegeben!). Durch diese Abhängigkeit wird D zum verknüpften Primärschlüssel. Somit kann obige Tabelle nur in der 1.NF sein.
> Aufgabe2:
> Zerlegen Sie die Tabelle so, sodass die dritte Normalform erfüllt ist.
> Lösung(nicht meine): Eine Tabelle mit A,B,C mit PK=A,B und eine Tabelle mit B,D mit PK=B
Man kann auch sagen, das in diesem Fall die 2.NF und die 3.NF gleich sind. Wenn wir eine zweite Tabelle (durch aufbrechen der obigen) erzeugen, dann kannst du die Abhängikeit kanalisieren. Somit hast du dann deine 3.NF.
Mal dir das mal am besten auf, dann wirds klarer!
Liebe Grüße
Analytiker
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 22:51 Di 26.06.2007 | Autor: | Haase |
Danke Dir, jetzt habe ich es verstanden:_)
|
|
|
|
|
> Tabelle(Primärschlüssel sind A,B):
> A B C D
> -----------
> X 100 2 HH
> X 101 1 KL
> Y 100 2 HH
> Y 101 3 KL
> Y 102 2 KL
Man kann es auch so relativ leicht sehen.
du siehst ja, dass wenn B = 100 ist D immer HH
selbes mit B=101 => D=KL
lg
|
|
|
|