INSÉRER... SUR LA CLÉ EN DOUBLE : Une opération nulle
Question :
Dans une table avec une clé unique pour deux colonnes, comment insérer une ligne sans déclencher d'erreur si la clé est déjà existe-t-il ?
Réponse :
MySQL propose plusieurs options pour gérer les conflits de clés en double lors des insertions.
INSÉRER... SUR LA CLÉ EN DOUBLE MISE À JOUR>
Une méthode simple mais efficace consiste à utiliser INSERT ... ON DUPLICATE KEY UPDATE>. Cette syntaxe demande à MySQL de mettre à jour la colonne id avec sa valeur existante si une clé en double est rencontrée. Cependant, cela ne déclenchera pas réellement de mise à jour, puisque l'identifiant est défini sur sa valeur actuelle.
INSÉRER IGNORE
Si vous n'êtes pas préoccupé par les erreurs ou épuisement du champ d'auto-incrémentation, INSERT IGNORE est une option simple. Cette syntaxe ignore simplement toutes les erreurs qui résulteraient de conflits de clés en double, y compris les erreurs de conversion, les erreurs de clé étrangère et l'épuisement des champs d'auto-incrémentation.
Avantages :
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!