Beispiel: Ich habe zwei Tabellen in meiner Datenbank classA und classB und eine Tabelle namens classA_classB genannt. Die letzte definierte zwei int-Felder mit Fremdschlüsseln, um eine Verbindung zwischen classA und classB herzustellen. Eine Klasse A kann also viele Klasse B haben, und viele Klassen können mit der gleichen Klasse B verknüpft sein. Einfaches Zeug, so weit.Alternative zu "Master" und "Slave" in Entity-Beziehung?
Das Problem ist, in meinem speziellen Fall, dass ich eine KlasseA habe, die mit einer anderen Klasse verbinden möchte. I.e. Ein Student verbindet sich mit seinen Freunden, die ebenfalls Studenten sind.
So analog zur Technik, die oben, ich habe: Student und student_student. student_student hat zwei Felder: student_id, student_id. Problem: Kann nicht zwei Felder mit demselben Namen haben!
Also muss ich sie wie nennen: master_student_id, slave_student_id.
Aber ich mag nicht die Begriffe "Master" und "Slave", weil diese Erinnerungen an eine schlechte Zeit in unserer Vergangenheit sind. Es mag albern klingen, aber ich denke, es ist nicht richtig, diese zu halten, zumindest aus einer moralischen Perspektive. Ich weiß, es ist nur ein Teil der modernen Informatik, aber ....
wie sonst könnte ich sie nennen?
Eltern und Kind vielleicht? Auch bin ich nicht sicher, ob es wirklich eine Entität "der Chef" gibt, während der andere "der Angestellte" ist ... Student und Student sind nicht hierarchisch. Aber dann, stellen wir uns vor, wir hatten zwei Klassen "Lehrer" und "Schüler". Das wäre eine klare Hierarchie. Allerdings brauche ich eine neutrale Lösung, da mein Framework diese 1: n-Beziehungen immer auf die gleiche Weise verknüpft.
Mein armes Festplatte in der Sklaverei ... –
Dom und Sub? :) oder, für eine sauberere Version, stehlen aus der Genetik: dominant und rezessiv – BobMcGee
@BobMcGee: dominant und rezessiv hat eine ganz andere Bedeutung. Sie können Rezessive ohne ein dominantes Gen haben, Sie können keine Sklaven ohne einen Meister haben. – Jimmy