Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Identifizierende Beziehung - viele zu vielen

Aus dem von Ihnen bereitgestellten Schema kann ich ersehen, dass die Fremdschlüsseleinschränkung in der Tabelle parents_children vorhanden ist , wodurch sichergestellt wird, dass die Verknüpfung zwischen Elternteil und Kind nur bestehen kann, wenn sowohl Elternteil als auch Kind vorhanden sind.

Dies hindert Sie jedoch nicht daran, einen Eintrag in parents einzufügen , ohne begleitenden Eintrag in parents_children oder übrigens children .

Kurz gesagt, dieses Schema ermöglicht die Existenz eines Elternteils ohne Kind.

Das Problem mit Ihrer Logik hier wäre, dass sowohl das übergeordnete als auch das untergeordnete Element erstellt werden müssen, bevor die Beziehung in parents_children erstellt werden kann (aufgrund der Fremdschlüsselbeziehungen). Die zusätzliche Logik, nach der Sie suchen (kein Kind, kein Elternteil und umgekehrt), würde jedoch eine Verknüpfung zwischen Elternteil und Kind erfordern, bevor ein Elternteil oder ein Kind erstellt werden kann.

Sehen Sie hier das Henne/Ei-Problem?