Les insertions de bases de données peuvent parfois entraîner des erreurs d'entrée en double lors de la tentative d'ajout d'enregistrements avec des identifiants uniques. MySQL propose plusieurs alternatives pour gérer de telles erreurs.
Une option consiste à utiliser la syntaxe INSERT...IGNORE, qui empêche la génération d'erreurs en cas d'entrée en double. Il ignore simplement l'insertion sans aucune notification.
Une autre approche consiste à utiliser REPLACE INTO, qui remplace un enregistrement existant par la même valeur de clé. Au lieu d'ignorer l'insertion, il écrase l'ancien enregistrement par le nouveau.
Enfin, INSERT...ON DUPLICATE KEY UPDATE permet d'effectuer une opération de mise à jour sur les rencontres de clés en double. Cela signifie qu'au lieu de tenter d'insérer un nouvel enregistrement, MySQL mettra à jour l'enregistrement existant avec les valeurs fournies.
Exemple :
Considérons une table nommée tbl avec des colonnes identifiant et valeur. Initialement, il contient une seule entrée : id=1 et value=1. L'exécution des instructions suivantes démontre le comportement de chaque syntaxe :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!