DBAtlas · Atlas für Datenbankbetrieb

1451: Cannot 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)

MySQL

Was bedeutet das?

Du hast versucht, eine Elternzeile zu löschen oder ihren Schlüssel zu ändern, aber der Foreign-Key-Constraint lässt es nicht zu, weil abhängige Kindzeilen existieren.

Ursache

Die referenzierte Elternzeile hat noch Kindzeilen, und der Constraint verwendet RESTRICT/NO ACTION für ON DELETE/UPDATE.

Lösung

Lösche zuerst die abhängigen Kindzeilen oder hänge sie an eine andere Elternzeile, dann lösche die Elternzeile. Willst du automatisches Verhalten, definiere den Constraint mit ON DELETE CASCADE oder ON DELETE SET NULL neu. Abhängige Zeilen finden: SELECT * FROM child_table WHERE fk_column = value.

In DBAtlas öffnen →

Weitere Einträge zu dieser Datenbank