Kann eine Tabelle in der 3. Normalform mehrere Fremdschlüssel haben (MYSQL) ?
Also zb Vermieter ist eine Tabelle die hat 5 fremdschlüssel. Einmal fremdschlüssel Mietvertrag, einmal Besitzer, einmal Anzahl, usw usw? Geht das alles?
Mit freundlichen Grüßen
2 Antworten
Natürlich.
Allerdings habe ich ein komisches Gefühl bei deiner Tabellen Aufzählung - ist das wirklich schon soweit normalisiert?
Ich kenn den Hintergrund nicht, aber Vertrag und Besitzer würde ich eher am Mietobjekt als dem Vermieter sehen...
So geht das nicht. Eine Abhängigkeit wirkt normalerweise nur in eine Richtung. Es gibt da schon Ausnahmen, die allerdings dadurch kompliziert werden können. Man muss ja normalerweise den Satz, von dem ein anderer abhängig ist, zuerst in die Datenbank schreiben.
Ehm okay und in diesem erklär Video warum ist die Tabelle unten links ohne primär Schlüssel? Pers nr und Projekt nr sind ja beides fremdschlüssel, oder?
Hast du dir die ersten beiden Normalformen der Reihe auch angesehen?
Wenn die beiden Fremschlüssel eindeutig sind, können sie gemeinsam als Primärschlüssel verwendet werden - das erkennst du im Video daran, dass die beiden Spaltennamen unterstrichen sind.
Würde das eine Buchungstabelle sein, wo jeder Mitarbeiter mehrere Zeiten pro Projekt eingibt müsstest du einen zusätzlichen Primärschlüssel einführen, da die beiden Fremdschlüssel nicht mehr eindeutig sind.
Mann, ist das schon lange her...
Ich kann die Normalformen nicht mehr erklären :-(
Klar geht das.
Ahh okay und dann muss man ja auch mit INNER JOIN abfragen etc ok macht Sinn danke
Ok danke hab eine voll gute Idee:
Kann man es nicht so machen das jede Tabelle jeden fremdschlüssel hat? Also beispielsweise es gibt 5 Tabellen und jede Tabelle hat dann 4 fremdschlüssel von den anderen Tabellen, verstanden? Also alle 5 Tabellen haben 4 fremdschlüssel. Kann man das machen?
Das geht natürlich, macht aber nur dann Sinn wenn es auch inhaltlich passt.
Ehm okay und in diesem erklär Video warum ist die Tabelle unten links ohne primär Schlüssel? Pers nr und Projekt nr sind ja beides fremdschlüssel, oder?
https://youtu.be/x183UkdsPQ8
Habs mir nicht angesehen, aber eine Tabelle kann durchaus auch 2 Fremdschlüssel haben die in Kombination eineindeutig sein müssen und dadurch einen Primärschlüssel bilden.
Ok danke hab eine voll gute Idee:
Kann man es nicht so machen das jede Tabelle jeden fremdschlüssel hat? Also beispielsweise es gibt 5 Tabellen und jede Tabelle hat dann 4 fremdschlüssel von den anderen Tabellen, verstanden? Also alle 5 Tabellen haben 4 fremdschlüssel. Kann man das machen?