Hallo,
Folgende Beispieltabelle sei gegeben:
Projekt(ProjektID, MitarbeiterID, Projektname, MitarbeiterName)
Alle Attribute seien hier atomar. Dann ist die Tabelle in der 1. NF.
Die Tabelle ist jedoch nicht in der 2. NF, da sich z.b. die ProjektID nicht zwingend ändert, wenn man MitarbeiterName ändert. Somit muss die Tabelle aufgespalten werden.
Hier nun meine Frage: Welche der beiden Varianten ist richtig?
Variante 1:
Projekt(ProjektID, ProjektName)
Mitarbeiter(MitarbeiterID, MitarbeiterName)
------------------------------------------
Variante 2:
Projekt(ProjektID, MitarbeiterID, ProjektName)
Mitarbeiter(MitarbeiterID, MitarbeiterName)
Unterschied:
Bei Variante 2 habe ich den Teilprimärschlüssel "MitarbeiterID" einerseits mit ausgelagert, jedoch auch in der Ursprungstabelle drinnen gelassen. Mir geht es hier nur im die Normalisierung und erstmal nicht um Fremdschlüssel!
Ist in Variante 2 der Teilprimärschlüssel "MitarbeiterID" nicht überflüssig?
Folgende Beispieltabelle sei gegeben:
Projekt(ProjektID, MitarbeiterID, Projektname, MitarbeiterName)
Alle Attribute seien hier atomar. Dann ist die Tabelle in der 1. NF.
Die Tabelle ist jedoch nicht in der 2. NF, da sich z.b. die ProjektID nicht zwingend ändert, wenn man MitarbeiterName ändert. Somit muss die Tabelle aufgespalten werden.
Hier nun meine Frage: Welche der beiden Varianten ist richtig?
Variante 1:
Projekt(ProjektID, ProjektName)
Mitarbeiter(MitarbeiterID, MitarbeiterName)
------------------------------------------
Variante 2:
Projekt(ProjektID, MitarbeiterID, ProjektName)
Mitarbeiter(MitarbeiterID, MitarbeiterName)
Unterschied:
Bei Variante 2 habe ich den Teilprimärschlüssel "MitarbeiterID" einerseits mit ausgelagert, jedoch auch in der Ursprungstabelle drinnen gelassen. Mir geht es hier nur im die Normalisierung und erstmal nicht um Fremdschlüssel!
Ist in Variante 2 der Teilprimärschlüssel "MitarbeiterID" nicht überflüssig?