Empêcher l'incrémentation automatique lors d'une insertion en double dans MySQL
L'insertion de lignes en double dans les tables MySQL avec des colonnes d'ID à incrémentation automatique peut entraîner une distorsion de l'ID valeurs. Pour éviter cela, une solution est nécessaire pour arrêter l'incrémentation automatique si une ligne en double est tentée.
Solution proposée :
Une approche consiste à modifier la requête INSERT pour vérifier l'existence de la ligne en double avant de tenter l'insertion. Ceci peut être réalisé à l'aide d'une sous-requête :
INSERT INTO tablename (tag) SELECT $tag FROM tablename WHERE NOT EXISTS( SELECT tag FROM tablename WHERE tag = $tag ) LIMIT 1;
En utilisant cette requête, la base de données ne tentera l'insertion que si la valeur de la balise n'existe pas dans la table. Cela empêche le déclenchement de l'incrémentation automatique en cas de tentatives en double.
Considérations :
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!