1451: Cannot delete or update a parent row: a foreign key constraint fails (suppression ou mise à jour de la ligne parente impossible : échec de la contrainte de clé étrangère)
MySQLQue signifie cette erreur ?
Vous avez tenté de supprimer une ligne parente ou de modifier sa clé, mais la contrainte de clé étrangère ne le permet pas, car des lignes enfants dépendantes existent.
Cause
La ligne parente référencée possède encore des lignes enfants et la contrainte utilise RESTRICT/NO ACTION pour ON DELETE/UPDATE.
Comment la corriger
Supprimez d'abord les lignes enfants dépendantes ou rattachez-les à un autre parent, puis supprimez la ligne parente. Si vous souhaitez un comportement automatique, redéfinissez la contrainte avec ON DELETE CASCADE ou ON DELETE SET NULL. Trouvez les lignes dépendantes : SELECT * FROM child_table WHERE fk_column = value.
Autres entrées pour ce moteur
- 2006MySQL server has gone away (le serveur MySQL a disparu)
- 1114The table is full (la table est pleine)
- 1215Cannot add foreign key constraint (impossible d'ajouter la contrainte de clé étrangère)
- 1452Cannot add or update a child row: a foreign key constraint fails (ajout ou mise à jour de la ligne enfant impossible : échec de la contrainte de clé étrangère)
- 1366Incorrect string/integer value for column (valeur de chaîne/entière incorrecte pour la colonne)
- 1044Access denied for user to database (accès refusé à la base de données pour l'utilisateur)
- 1264Out of range value for column (valeur hors limites pour la colonne)