sql >> Base de Datos >  >> RDS >> Mysql

Reordenar/restablecer clave principal de incremento automático

Aunque esta pregunta parece ser bastante antigua, se publicará una respuesta para alguien que busque aquí.

SET @count = 0;
UPDATE `users` SET `users`.`id` = @count:= @count + 1;

Si la columna se usa como clave externa en otras tablas, asegúrese de usar ON UPDATE CASCADE en lugar del predeterminado ON UPDATE NO ACTION para la relación de clave externa en esas tablas.

Además, para restablecer el AUTO_INCREMENT contar, puede emitir inmediatamente la siguiente declaración.

ALTER TABLE `users` AUTO_INCREMENT = 1;

Para MySQL, restablecerá el valor a MAX(id) + 1 .