DBAtlas · Atlas d'exploitation des bases de données

1062: Duplicate entry for key (entrée en double pour la clé)

MySQL

Que signifie cette erreur ?

La ligne insérée ou mise à jour viole un index UNIQUE ou la PRIMARY KEY ; la même valeur de clé existe déjà.

Cause

INSERT répété avec la même clé unique, saisie de données en double, compteur AUTO_INCREMENT en retard, ou lignes en double existantes lors de l'ajout d'un index unique à une table existante.

Comment la corriger

Le message d'erreur indique la valeur de clé en conflit et le nom de l'index. Pour mettre à jour la ligne existante, envisagez INSERT ... ON DUPLICATE KEY UPDATE ou INSERT IGNORE / REPLACE. Trouvez les doublons : SELECT my_column, COUNT(*) FROM my_table GROUP BY my_column HAVING COUNT(*) > 1. Si vous ne pouvez pas ajouter un index unique, nettoyez d'abord les doublons.

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur