Datenbankentwurf
-
Hallo,
ich habe eine DB mit einer Tabelle diw wie folgt aussieht,
_____________________________________________________ | Vorlesung | Semester | KNr | Datei | Aufg| Thema | --------------------------------------------------- es gelten folgende FD: {Vorlesung, Semester, Knr} --> {Datei} {Datei} --> {Vorlesung, Semester, Knr} {Datei, Aufg} --> {Thema}
Jetzt habe ich mir gedacht ich zerlege die Tabelle in zwei
Tabellen:Hier ist Datei der Schlüssel _______________________________________ | Vorlesung | Semester | KNr | Datei | ------------------------------------- und hier ist Datei & Aufg der Schlüssel _______________________ | Datei | Aufg| Thema | -----------------------
Kann man das so zerlegen oder gibt es noch eine bessere Möglichkeit?
mfg
-
Kann dir denke ich so niemand sagen denn man weiß nicht welche Daten in die Tabelle kommen.
Stichwort für dich ist normalisierung
Die gibt es imho bis 9
Relevant sind sie aber bis Stufe 5.
Gebraucht habe ich derzeit nicht mehr als bis Stufe 3.
-
http://de.wikipedia.org/wiki/Normalisierung_(Datenbank)
ist dir das alles bekannt? Denke schon oder? ^^
Aber les trotzdem mal durch (:ps:man kanns mit der normalisierung aber auch übertreiben
Aber nochwas .. ne vortlaufende id ist meist der beste schlüssel.
-
Gerd Schneider schrieb:
Hallo,
ich habe eine DB mit einer Tabelle diw wie folgt aussieht, [...]
Wenn du alle funktionalen Abhängigkeiten quantifizieren kannst dann gibt es sogar einen Algorithmus nachdem du das alles normalisieren kannst. Der sollte sich in diesem Buch finden Datenbanksysteme | ISBN: 3486576909, die Seite weiß ich aber nicht mehr aus dem Kopf. Und wie Unix-Tom schon sagte Stufe 3 ist das Gängigste, mit Erfahrung und Gefühl bekommt man das sogar fast "automatisch" schon beim Entwurf hin, BCNF kann einem durchaus auch schon begegnen was höheres hab ich noch nicht gesehen ausserhalb des akademischen Rahmens.