2010-10-30 5 views
2

Existe-t-il un moyen d'ajouter l'incrémentation automatique à une colonne existante sans que mysql ne reconstruise la totalité de la table?Ajout d'un incrément automatique à une colonne sans reconstruction de la table

Édition - Je suis en train de faire un ALTER, mais cela prend des âges et des âges, car mysql reconstruit toute la structure de la table. Cette question est de savoir s'il existe un moyen d'accélérer ce processus - après tout, l'opération logique d'ajouter "auto increment" ne devrait pas avoir à toucher à des données de table, c'est juste comment mysql est mis en œuvre.

Répondre

-1
ALTER TABLE [table] ADD [columname] INT UNSIGNED NOT NULL AUTO_INCREMENT 

Sinon, vous pouvez définir le numéro de début de la AUTO_INCREMENT

ALTER TABLE [table] AUTO_INCREMENT = [start] 
+0

mysql ne reconstruit la table entière lorsque vous modifiez (cette opération prend beaucoup de temps pour les grandes tables). Je cherchais un peu de _way_ pour que mysql fasse cela dans O (1) (lire: vraiment rapide, ou au moins o (n)). – ripper234

Questions connexes