MySQL sur un double de la clé de mise à jour
Si j'ai de la requête comme ceci, comment puis-je consulter les valeurs que j'ai déjà donné dans l'instruction de mise à jour, de sorte que je n'ai pas besoin d'insérer des mêmes données pour interroger de nouveau? Exemple je voudrais mettre à jour col1 valeur, 'xxx', mais maintenant, j'ai besoin d'entrer dans des " xxx " de nouveau en double déclaration. Est-il de toute façon à reporter ces valeurs en double déclaration?
INSERT INTO TABLENAME(col1, col2)
VALUES (’xxx’, ‘yyy’)
ON DUPLICATE KEY UPDATE col1 = ‘zzz’
Je viens de quitter ce ici, très belle solution: stackoverflow.com/a/450695/1101589
OriginalL'auteur | 2009-05-15
Vous devez vous connecter pour publier un commentaire.
Cela devrait fonctionner et est un peu plus élégant:
Notez que vous n'avez pas besoin de mettre à jour la clé primaire de la partie de la ligne. Nous savons que c'est le même parce qu'il y a une collision.
OriginalL'auteur Joshua Martell
En PHP je faire pour résoudre le problème:
OriginalL'auteur Marc Armstrong