Angenommen, ich habe mehrere Beziehungen in meiner Datenbank, z. B. Geschäft, Mitarbeiter und Verkauf, und ich möchte Paare mit einer einfachen binären Beziehung verbinden. Persönlich würde ich Tabellen mit den Namen Employee_Store und Employee_Sale mit einem natürlichen Schlüssel erstellen, der aus den Fremdschlüsseln besteht.
Jetzt besteht mein Kollege darauf, eine Tabelle für mehrere Beziehungen zu erstellen. Für das obige Beispiel könnte es eine Tabelle mit dem Namen EmployeeLinks geben:
EmployeeLinks(
IdLink int PK,
IdEmployee int FK null,
IdStore int FK null,
IdSale int FK null,
LinkType int not null
)
Bitte helfen Sie mir mit guten Gründen, warum dies keine gute Idee ist. Ich habe meine eigenen Argumente, aber ich möchte sie privat halten und Ihre unvoreingenommenen Meinungen hören.
BEARBEITEN:
Anfangs hätte die obige Tabelle keinen Primärschlüssel (!). Da die Fremdschlüssel null zulassen, ist ein Ersatzschlüssel die einzige Option.