1215: Cannot add foreign key constraint (Foreign-Key-Constraint kann nicht hinzugefügt werden)
MySQLWas bedeutet das?
Der zu definierende Foreign-Key-Constraint kann nicht erstellt werden; MySQL kann den Constraint nicht hinzufügen.
Ursache
Abweichung bei Datentyp/Länge/Vorzeichen (signed-unsigned) oder Zeichensatz/Collation zwischen Kind- und referenzierter Spalte, kein passender Index/PRIMARY KEY auf der referenzierten Spalte, Tabellen mit unterschiedlichen Storage Engines (eine ist MyISAM) oder die referenzierte Tabelle existiert noch nicht.
Lösung
Stelle sicher, dass die Spaltentypen auf beiden Seiten EXAKT gleich sind (z. B. beide INT UNSIGNED). Prüfe, ob die referenzierte Spalte durch einen Index abgedeckt ist (meist PRIMARY KEY oder UNIQUE). Stelle sicher, dass beide Tabellen InnoDB sind. Verwende für String-Schlüssel denselben Charset/dieselbe Collation. Details: SHOW ENGINE INNODB STATUS (LATEST FOREIGN KEY ERROR).
Weitere Einträge zu dieser Datenbank
- 2003Can't connect to MySQL server (TCP/IP) (keine Verbindung zum MySQL-Server über TCP/IP)
- 2006MySQL server has gone away (Verbindung zum MySQL-Server verloren)
- 1114The table is full (die Tabelle ist voll)
- 1451Cannot delete or update a parent row: a foreign key constraint fails (Elternzeile kann nicht gelöscht/geändert werden: Foreign-Key-Constraint schlägt fehl)
- 1452Cannot add or update a child row: a foreign key constraint fails (Kindzeile kann nicht eingefügt/geändert werden: Foreign-Key-Constraint schlägt fehl)
- 1366Incorrect string/integer value for column (falscher String-/Integer-Wert für Spalte)
- 1044Access denied for user to database (Zugriff des Benutzers auf die Datenbank verweigert)