Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment réinitialiser AUTO_INCREMENT dans MySQL

Vous pouvez réinitialiser le compteur avec :

ALTER TABLE tablename AUTO_INCREMENT = 1

Pour InnoDB vous ne pouvez pas définir le auto_increment valeur inférieure ou égale à l'indice courant le plus élevé. (citation de ViralPatel ):

Notez que vous ne pouvez pas réinitialiser le compteur à une valeur inférieure ou égale à celles qui ont déjà été utilisées. Pour MyISAM, si la valeur est inférieure ou égale à la valeur maximale actuellement dans la colonne AUTO_INCREMENT, la valeur est réinitialisée au maximum actuel plus un. PourInnoDB, si la valeur est inférieure à la valeur maximale actuelle dans la colonne, aucune erreur ne se produit et la valeur de séquence actuelle n'est pas modifiée.

Voir Comment puis-je réinitialiser un MySQL AutoIncrement en utilisant une valeur MAX d'une autre table ? sur la façon d'obtenir dynamiquement une valeur acceptable.