Comment puis-je réinitialiser le paramétre AUTO_INCREMENT d’un champ ?
Je veux qu’il recommence à compter à partir de 1.
Comment puis-je réinitialiser le paramétre AUTO_INCREMENT d’un champ ?
Je veux qu’il recommence à compter à partir de 1.
Vous pouvez réinitialiser le paramétre AUTO_INCREMENT à 1 avec la commande suivante:
ALTER TABLE tablename AUTO_INCREMENT = 1
Pour InnoDB, vous ne pouvez pas définir une valeur d’AUTO_INCREMENT inférieure ou égale à la valeur la plus élevée de l’index courant.
Essayez le code suivant pour remettre le compteur AUTO_INCREMENT à zéro :
SET @num := 0;
UPDATE your_table SET id = @num := (@num+1);
ALTER TABLE your_table AUTO_INCREMENT =1;
Il existe un moyen très simple avec phpMyAdmin sous l’onglet « Opérations ». Dans l’onglet « Options pour cette table », vous pouvez définir l’auto-incrément au nombre que vous voulez.
La meilleure solution qui a fonctionné pour moi :
ALTER TABLE my_table MODIFY COLUMN ID INT(10) UNSIGNED;
COMMIT;
ALTER TABLE my_table MODIFY COLUMN ID INT(10) UNSIGNED AUTO_INCREMENT;
COMMIT;
C’est rapide, ça fonctionne avec InnoDB, et je n’ai pas besoin de connaître la valeur maximale actuelle !