Heim >Datenbank >MySQL-Tutorial >Kann ein Fremdschlüssel auf eine Nicht-Primärschlüsselspalte verweisen?
Fremdschlüssel referenziert Nicht-Primärschlüsselspalte
Die Zuordnung von Fremdschlüsseln zu Nicht-Primärschlüsselspalten kann eine Herausforderung darstellen. In diesem Beispiel enthält die vom Fremdschlüssel referenzierte Tabelle eine Spalte mit dem Namen „AnotherID“, die nicht als Primärschlüssel festgelegt ist.
Eine mögliche Lösung besteht darin, sicherzustellen, dass die Spalte „AnotherID“ eine eindeutige Einschränkung aufweist. Books Online unterstützt dies und gibt an, dass Fremdschlüsseleinschränkungen mit eindeutigen Einschränkungen und nicht nur mit Primärschlüsseln verknüpft werden können. Wenn Sie die Tabelle so ändern, dass sie eine eindeutige Einschränkung für „AnotherID“ enthält, kann der Fremdschlüssel erstellt werden.
Es ist jedoch wichtig, die möglichen Auswirkungen solcher Änderungen zu berücksichtigen. Das Anwenden eindeutiger Einschränkungen kann zusätzliche Komplexität oder Einschränkungen mit sich bringen, und es wird generell empfohlen, nach Möglichkeit Primärschlüssel als Ziel von Fremdschlüsseln zu verwenden. In Situationen, in denen die Datenstruktur nicht geändert werden kann, kann die Implementierung eindeutiger Einschränkungen für Nicht-Primärschlüsselspalten eine praktikable Option sein, um die referenzielle Integrität aufrechtzuerhalten.
Das obige ist der detaillierte Inhalt vonKann ein Fremdschlüssel auf eine Nicht-Primärschlüsselspalte verweisen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!