原因:在进行数据的插入删除的时候,总会有以前创建的数据被删除的情况,但是删除后再添加,还是从当前id最大的值进行自增的,所以是这样下去可能时间长了就会超出范围
解决方案:
如果直接在数据库中进行操作,直接跳过前两步,直接第三步即可。
第一步:对你的项目进行配置,因为像是springboot的框架中,要想执行多条语句,要进行相关的配置如下:
url: jdbc:mysql://localhost:3306/dare?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8&allowMultiQueries=true
最重要的是&allowMultiQueries=true要加到对应的语句后边
第二步:检查项目是否使用druid的数据池如果使用用了,要使用以下配置文件:见我另一篇博客最后的解决方案
第三步:
1、如果是直接在数据库管理软件/或后台执行语句:
<!--对自增列进行重新排序-->
ALTER TABLE `table_name` DROP `id`;
ALTER TABLE `table_name` ADD `id` int NOT NULL FIRST;
ALTER TABLE `table_name` MODIFY COLUMN `id` int NOT NULL AUTO_INCREMENT,ADD PRIMARY KEY(id);
2、如果是在对应的项目中,则在对应的mapper的xml文件中执行
<delete id="deleteTempProjectAPQPStep">
delete
from apqp_schedule_temp
where emp_no = #{empNo};
<!--对自增列进行重新排序-->
ALTER TABLE `table_name` DROP `id`;
ALTER TABLE `table_name` ADD `id` int NOT NULL FIRST;
ALTER TABLE `table_name` MODIFY COLUMN `id` int NOT NULL AUTO_INCREMENT,ADD PRIMARY KEY(id);
</delete>