Ich entwerfe eine Datenbank, in der das übergeordnete Element grundsätzlich nicht ohne zwei untergeordnete Elemente existieren kann. Beispiel: Entitätssatz „Ehe“, KANN ohne den Entitätssatz „Mann“ und den Entitätssatz „Frau“ NICHT existieren, aber weder Mann noch Frau benötigen den Entitätssatz „Ehe“, um zu existieren. (Stellen wir uns nur Ehen zwischen Mann und Frau vor, daher ist es weniger komplex). Stellen wir uns außerdem vor, dass es in der Ehe viele Männer oder viele Frauen geben kann, aber Männer und Frauen können nur EINE Ehe eingehen. Ich benötige Hilfe bei der Abfrage. Wie erzwinge ich dies?
Code: Select all
CREATE TABLE Marriage(
marriageId INT
)
CREATE TABLE Man(
manId INT,
marriageId INT,
FOREIGN KEY (marriageId) REFERENCES Marriage(marriageId)
ON DELETE SET NULL
)
CREATE TABLE Woman(
womanId INT,
marriageId INT,
FOREIGN KEY (marriageId) REFERENCES Marriage(marriageId)
ON DELETE SET NULL
)
Das ist im Grunde das, was ich jetzt habe. (Andere Attribute spielen im Moment keine Rolle).
Zusammenfassend lautet meine Frage: Wie kann ich die VOLLSTÄNDIGE Beteiligung an beiden Enden der Ehe durchsetzen?