J'ai une table Mysql avec une seule clé primaire (appelée pkey) qui incrémente automatiquement, et je voudrais cloner une ligne, en gardant toutes les données identiques, sauf pour la clé primaire qui devrait devient la prochaine valeur disponible définie par l'incrémentation automatique.Mysql Clone Row avec clé primaire
Ma première question est, la requête suivante est-elle possible?
UPDATE `table` SET pkey='next_available_primary_key' WHERE pkey='old_primary_key'
si ont essayé
UPDATE `table` SET pkey=null WHERE pkey='old_primary_key'
Mais il définit seulement la valeur de la clé primaire à zéro. Merci d'avance pour toute aide/suggestion.
MISE À JOUR:
Je suppose que je dois ajouter que je ne veux pas vraiment deux copies des données du tableau. Je veux juste changer la clé primaire. Donc, si je devais utiliser SELECT INSERT je dois compenser par la commande DUPLICATE KEY UPDATE pkey = « next_available_primary_key » je ne suis pas sûr comment faire ...
Par curiosité: Quel est votre objectif ? Parce que vous utilisez peut-être mal la clé primaire pour un objectif (comme les données de commande) pour lequel il n'est pas destiné. –