Heim > Datenbank > MySQL-Tutorial > Warum erhalte ich bei MySQL die Fehlermeldung „Fremdschlüsseleinschränkung kann nicht hinzugefügt werden'?

Warum erhalte ich bei MySQL die Fehlermeldung „Fremdschlüsseleinschränkung kann nicht hinzugefügt werden'?

Susan Sarandon
Freigeben: 2025-01-18 20:26:13
Original
731 Leute haben es durchsucht

Why is MySQL Giving Me a

Probleme mit MySQL-Fremdschlüsseleinschränkungen lösen

Das Erstellen von Fremdschlüsselbeziehungen in MySQL kann manchmal zu dem frustrierenden Fehler führen:

<code>ERROR 1215 (HY000): Cannot add foreign key constraint</code>
Nach dem Login kopieren

Diese Meldung weist auf ein Problem beim Herstellen der Fremdschlüsselverknüpfung zwischen Tabellen hin. Lassen Sie uns häufige Ursachen und Lösungen untersuchen.

Datentyp-Diskrepanzen:

Bestätigen Sie, dass die Datentypen der untergeordneten und übergeordneten Spalten identisch sind. Wenn die übergeordnete Spalte beispielsweise INT ist, muss die entsprechende untergeordnete Spalte ebenfalls INT sein. Bei Nichtübereinstimmung wird verhindert, dass die Einschränkung hinzugefügt wird.

Reihenfolge der Tabellenerstellung:

Während Best Practices vorschreiben, übergeordnete Tabellen vor untergeordneten Tabellen zu erstellen, können Sie diese Einschränkung vorübergehend umgehen. Verwenden Sie den folgenden Befehl, bevor Sie Ihre Tabellen erstellen:

<code>SET FOREIGN_KEY_CHECKS=0;</code>
Nach dem Login kopieren

Dadurch werden Fremdschlüsselprüfungen deaktiviert und eine flexible Tabellenerstellungsreihenfolge ermöglicht. Denken Sie daran, die Prüfungen anschließend mit SET FOREIGN_KEY_CHECKS=1;

wieder zu aktivieren

Das Problem lokalisieren mit <code>SHOW ENGINE INNODB STATUS;</code>:

Zur genauen Fehleridentifizierung führen Sie Folgendes aus:

<code>SHOW ENGINE INNODB STATUS;</code>
Nach dem Login kopieren

Untersuchen Sie den Abschnitt LATEST FOREIGN KEY ERROR auf spezifische Details zur fehlgeschlagenen Einschränkung. Dies liefert entscheidende Informationen für eine gezielte Fehlerbehebung.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich bei MySQL die Fehlermeldung „Fremdschlüsseleinschränkung kann nicht hinzugefügt werden'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage