MYSQL在不删除数据的情况下,重置主键自增id

方法一:

SET  @num := 0;
UPDATE table_name SET id = @num := (@num+1);
ALTER TABLE table_name AUTO_INCREMENT =1;

方法二:

背景(mysql 数据在进行多次删除新增之后id变得很大,但是并没有那么多条数据)

写一个存储过程更新mysql的主键id

话不多说上代码

1.mysql 命令模式下键入 
    delimiter $$
2.
    create procedure update_data_id()
     begin
        declare ind int;
        set ind = 1;
        while ind <= 现有表数据总量+1
        do
             UPDATE  表名 set id = ind where id > ind LIMIT 1 ;
             set ind = ind + 1;
         end  while;
    end $$
3.delimiter ;

表的总数量暂时没有做到count去取,暂时需要自己去count添加进去。
完毕!!!

方法三:

alter table 表名 drop id;
alter table 表名 add id int primary key not null auto_increment first;


赞(0) 打赏
未经允许不得转载:建站相关 » MYSQL在不删除数据的情况下,重置主键自增id

评论 抢沙发

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏