2NF < Algor.+Datenstr. < Theoretische Inform. < Hochschule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 10:35 Sa 26.01.2008 | Autor: | belf |
Aufgabe | Ein Spielzeugladen verfügt über folgende Informationen zu seiner Ware: Na-
me des Spielzeuges, für welche Altersgruppe das Spielzeug geeignet ist, wie viel Stücke
noch vorhanden sind, wer der Hersteller des Spielzeuges ist (Name, Ort, Land), Bestel-
lungsdatum für neue Ware und Anzahl bestellte Stücke. Diese Informationen werden in
der Tabelle Spielzeuge festgehalten.
[Dateianhang nicht öffentlich]
In welcher Normalform ist die Tabelle? Begründen Sie. |
Hallo
Ich bin ziemlich verwirrt mit dieser Aufgabe und möchte gerne wissen, was ihr von meiner Überlegung haltet :
Da es nicht direkt gegeben ist, welches Atribut der Primärschlüssel ist, habe ich angenommen, dass es nur einen gibt und zwar Spielzeug_Id. Nun darf ich behaupten, dass die Tabelle schon in 2NF ist, nur weil die Tabelle über keinen zusammengesetzen Schlüssel verfügt ? In vielen Büchern wird von 2NF gesprochen immer mit Beispielen, die zusammengesetzte Schlüssel enthalten.
Die 3NF habe ich so geprüft :
Ort und Land sind von Hersteller abhängig und Hersteller von Spielzeug_Id. Also ist die Tabelle wegen dieser transitiven Abhängigkeit nicht in 3NF, stimmt das ?
Vielen Dank !
Dateianhänge: Anhang Nr. 1 (Typ: JPG) [nicht öffentlich]
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 22:00 Sa 26.01.2008 | Autor: | fausto |
Guten Tag
Ich denke bereits zur ersten Normalform sollte man ein Fragezeichen setzen. In
http://de.wikipedia.org/wiki/Normalisierung_%28Datenbank%29#Erste_Normalform_.281NF.29
wird zwar gesagt, dass
> Ob Inhalte atomar sind bzw. ob tatsächlich eine Wiederholungsgruppe
> vorliegt, lässt sich oft nur im Licht der Anwendung entscheiden...
Trotzdem ist das Intervall "Altersgruppe" kaum als atomar zu bezeichnen.
Zur zweiten Normalform:
Natürlich hast du formal recht mit deiner Bemerkung
> ... in 2NF ist, nur weil die Tabelle über keinen zusammengesetzen Schlüssel verfügt ...
Dies kann aber immer erreicht werden, indem man ein künstliches ID-Attribut hinzufügt. Es gibt schon Gründe so etwas in der Praxis zu tun, aber das sollte erst NACH dem Datenbankdesign erfolgen. Wenn wir also das (in der realen Welt bedeutungslose) ID-Attribut weglassen bleibt z.B. Spielzeugname und Herstellername als Primaerschluesselkandidat. Ob der Spielzeugname als Primaerschluessel genuegt ist eine Frage aus der realen Welt und kann aufgrund der Angaben nicht definitiv geklaert werden. Der Ort is aber nur vom Hersteller und nicht vom Spielzeug abhängig => keine zweite Normalform.
Jetzt spaetesten sollte man die Tabelle in mehrere aufspalten und nochmals die Frage der Normalformen klären (inklusive die Frage nach der dritten Normalform). So wird man schliesslich zu einem vollstaendig normalisierten Datenbankdesign gelangen...
Hoffe es hilft & Gruss
Fausto
|
|
|
|