Utilitaires
Scripts
Divers
Jeux
Rechercher
Réflexions informatiques

Réinitialiser l'autoincrément d'une table

Pour réinitialise l'autoincrément d'une table, il faut faire :
ALTER TABLE matable AUTO_INCREMENT = 1;

Cependant, si la table est en INNODB et qu'il y a des clés étrangères, cela ne fonctionnera pas (aucune erreur apparente).
Voici comment le forcer :
DELETE FROM matable;
SET FOREIGN_KEY_CHECKS = 0;
TRUNCATE matable;
SET FOREIGN_KEY_CHECKS = 1;
ALTER TABLE matable AUTO_INCREMENT = 1;

Le premier Delete vide la table et les autres tables liées par des clés étrangères si l'option Cascade est posée.
Les lignes suivantes désactivent la vérification des clés, fait un vidage et refixe la valeur de l'auto incrément. 
09/02/2017

Rechercher sur le site

Informations sur le site