数据库id自增重排序问题

数据库id自增重排序问题解决

问题描述

在做javaweb项目的过程中,使用SSM框架,发现操作数据库的增删查改功能时,数据库的主键id不会重新排序,导致数据量一多,id值特别大特别乱,于是给出以下的解决方案。

MySQL中直接操作

直接在数据库运行中输入

alter table 表名 drop column 主键id;
alter table 表名 add 主键ID mediumint(8) not null primary key auto_increment first

SSM框架中操作

主要实现原理:删除主键id重新生成新的主键id,做成数据刷新的按钮功能,此方法唯一不足是会加大对数据库的访问,可能会影响性能,但是一般此功能不需要经常使用!

在你的mybatis的xml文件中可以使用DDL操作,语句放在******标签中

 <!-- 刷新用户 -->
 <update id="freshAllUser1">  //调用DAO层函数
     alter table 表名 drop column 主键id
</update>
<update id="freshAllUser2">  //调用DAO层函数
    alter table 表名 add 主键id  int(11) not null primary key auto_increment first
</update>

至于后面几层的写法就不给出了,就是调用这两个函数,不过在业务层中封装层一个函数调用更方便些!

发布了11 篇原创文章 · 获赞 0 · 访问量 660

猜你喜欢

转载自blog.csdn.net/qq_28406091/article/details/100135964
今日推荐