不刪除表數據重置自增id

最近由於需要將數據表的自增主鍵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,但是畢竟麻煩,但暫時沒找到其他的方法,如果有更好的方法,下次再進行補充。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章