Polymorphe Fremdschlüssel: Kann ein Fremdschlüssel auf mehrere Tabellen verweisen?
Das Konzept von Fremdschlüsseln in relationalen Datenbanken beinhaltet typischerweise die Angabe des genauen Ziels Tabelle, auf die eine Referenzspalte verweisen soll. Wenn es jedoch um polymorphe Assoziationen geht, bei denen eine Tabelle eine Beziehung zu mehreren anderen Tabellen in einer Menge hat, stellt sich die Frage: Ist es möglich, einen Fremdschlüssel zu haben, der auf eine dieser Tabellen verweisen kann?
Die Antwort: Nein
In MySQL und PostgreSQL kann eine Fremdschlüsseleinschränkung nur auf eine einzelne übergeordnete Tabelle verweisen. Diese Einschränkung stellt die Datenintegrität sicher, indem eine klare Beziehung zwischen den referenzierenden Zeilen und den referenzierten Zeilen in der übergeordneten Tabelle aufrechterhalten wird.
Alternativen für polymorphe Assoziationen
Da ein Fremdschlüssel dies nicht kann Wenn Sie direkt auf mehrere Tabellen verweisen, sind alternative Lösungen erforderlich, um polymorphe Assoziationen zu modellieren:
Zusätzliche Ressourcen
Weitere Einblicke in polymorphe Assoziationen und ihre Lösungen finden Sie unter die folgenden Ressourcen:
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3