最近由于需要将数据表的自增主键id重置,所以查找了相关的信息,但暂时没有找到特别好的方法,只能用比较笨的方法进行重置,那就是新建一个一模一样的临时表,然后清除原先表的数据,再将临时表的信息进行填充以此重置id。
比如有a表需要进行重置id,下面是a表的数据:
需求:需要将a表的id从1开始自增
解决方案:
1;建立临时表b:
这个时候临时表b保存了a表的数据。
2:重置a表
这里要注意truncate是ddl语句,清空表里所有的数据保留表结构,无法进行回退恢复,这里和delete不一样,delete是dml语句,可以进行回退。
3:将临时表b的数据重新导入到a表,进行id自增的重置
对比原先a表的数据和现在a表的数据:
可以看出id已经变成从1开始自增了,这种方法可以完成保留数据重置id,但是毕竟麻烦,但暂时没找到其他的方法,如果有更好的方法,下次再进行补充。