„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Kann ein Fremdschlüssel auf mehrere Tabellen in einer relationalen Datenbank verweisen?

Kann ein Fremdschlüssel auf mehrere Tabellen in einer relationalen Datenbank verweisen?

Veröffentlicht am 09.11.2024
Durchsuche:288

Can a Foreign Key Reference Multiple Tables in a Relational Database?

Kann ein Fremdschlüssel auf mehrere Tabellen verweisen?

Das Festlegen von Fremdschlüsseleinschränkungen erfordert normalerweise die Auswahl einer einzelnen Zieltabelle. Im Kontext polymorpher Beziehungen kann eine einzelne Tabelle jedoch Verbindungen mit mehreren anderen Tabellen haben.

Polymorphe Beziehungen und Fremdschlüssel

In polymorphen Beziehungen kann eine Tabelle ( (z. B. Bilder) unterhält eine Beziehung zu einer von mehreren anderen Tabellen (z. B. Untergebenen oder Produkten). Dies wird durch eine Spalte (person_type) erreicht, die die spezifische Tabelle identifiziert, auf die der Fremdschlüssel verweisen soll.

Antworten

Leider nein. Fremdschlüsseleinschränkungen erlauben nur Verweise auf eine einzelne übergeordnete Tabelle. Das bedeutet, dass Sie keinen Fremdschlüssel erstellen können, der auf mehrere Tabellen gleichzeitig verweist.

Alternativen

Es gibt jedoch Möglichkeiten, dieses Verhalten mithilfe anderer Techniken zu simulieren, z :

  • Diskriminatorspalten: Fügen Sie der übergeordneten Tabelle eine Spalte hinzu, die den Typ der untergeordneten Tabelle identifiziert.
  • Union-Tabellen: Erstellen eine einzelne Tabelle, die die kombinierten Daten aller zugehörigen Tabellen enthält.
Freigabeerklärung Dieser Artikel wird unter folgender Adresse abgedruckt: 1729692950 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

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