Relation zwischen zwei Tabellen
Naps
- datenbank
0 Felix Riesterer0 Bobby0 1UnitedPower0 Naps
Hi,
was ist die gängige Praxis, wenn ich zwei Tabellen miteinander verbinden will?
Macht man eine "Relationship-Tabelle" in der dann eine eindeutige ID beider Tabellen steht?
Oder trage ich einfach eine eindeutige ID z.B. der Tabelle 2 in die Tabelle 1 ein?
Danke!
MfG Naps
Lieber Naps,
Relationen werden über identische Schlüsselwerte und -bezeichner erreicht. Du interessierst Dich für Grundlagen relationaler Datenbanken und für eine Einführung in JOIN-Techniken. Bei letzteren wird genau dieser Umstand genutzt.
Liebe Grüße,
Felix Riesterer.
Relationen werden über identische Schlüsselwerte und -bezeichner erreicht. Du interessierst Dich für Grundlagen relationaler Datenbanken und für eine Einführung in JOIN-Techniken. Bei letzteren wird genau dieser Umstand genutzt.
Die verschiedenen JOIN-Möglichkeiten sind mir denke ich klar.
Mich verwirren nur die verschiedenen Ansatzpunkte. Wenn man hier bei Wikipedia http://de.wikipedia.org/wiki/Relationale_Datenbank#Beziehungen_zwischen_Tabellen
nachliest, sieht man, dass dort genau so eine Tabelle vorhanden ist, in der dann nur die beiden Schlüsselwerte zweier Tabellen eingetragen sind. D.h. man hat 3 Tabellen.
Bei deinem Link wir aber der Schlüssel der Tabelle "Orte" einfach in die erste Tabelle eingetragen.
Hier würde mich der Unterschied interessieren, bzw. was der bessere Weg ist.
MfG Naps
Hi,
Die verschiedenen JOIN-Möglichkeiten sind mir denke ich klar.
Mich verwirren nur die verschiedenen Ansatzpunkte. Wenn man hier bei Wikipedia http://de.wikipedia.org/wiki/Relationale_Datenbank#Beziehungen_zwischen_Tabellennachliest, sieht man, dass dort genau so eine Tabelle vorhanden ist, in der dann nur die beiden Schlüsselwerte zweier Tabellen eingetragen sind. D.h. man hat 3 Tabellen.
Bei deinem Link wir aber der Schlüssel der Tabelle "Orte" einfach in die erste Tabelle eingetragen.
Hier würde mich der Unterschied interessieren, bzw. was der bessere Weg ist.
Der Unterschied ist die Relation 1:n <---> m:n.
m:n geht nicht (vernünftig) ohne Verknüpfungstabelle, 1:n schon.
cu,
Andreas
Moin
was ist die gängige Praxis, wenn ich zwei Tabellen miteinander verbinden will?
Macht man eine "Relationship-Tabelle" in der dann eine eindeutige ID beider Tabellen steht?
Oder trage ich einfach eine eindeutige ID z.B. der Tabelle 2 in die Tabelle 1 ein?
Das kommt auf die Relation an. Bei 1:1 kann man direkt in der einen Tabelle die Relation zur anderen Tabelle eintragen.
Komplizierter wird es bei 1:n oder m:m Beziehungen. Hier würde ich auf eine gesonderte Relationstabelle zurückgreifen.
Gruß Bobby
Meine Herren!
Macht man eine "Relationship-Tabelle" in der dann eine eindeutige ID beider Tabellen steht?
Oder trage ich einfach eine eindeutige ID z.B. der Tabelle 2 in die Tabelle 1 ein?
Sowas kann man auf sehr abstrakter Ebene den Normalformen entnehmen. Lass dich nicht von den Formalismen dort abschrecken, den Großteil wird man intuitiv sowieso schon richtig machen. Wenn ich mal wieder vor so einem Problem stehe, rufe ich mir die Normalenformen schnell wieder ins Gedächtnis. Für mich sind diese Normalformen besonders ergiebig, weil sie die Problematik auf einer Ebene erfassen, auf der man sich über JOINS und andere relationale Algebra noch keine Gedanken machen muss, es geht im wesentlichen erstmal nur darum Redundanzen zu vermeiden.
Perfekt!
Danke an alle ;)