MySQL 快速將不連續進行修復為連續
MySQL 表內的數據不連續情況可能有以下原因導致:
1、insert語句不管是否成功,都會增加AUTO_INCREMENT值。
2、進行了delete相關操作。
3、rollback相關。
不管是因為什么情況導致,領導有這個需求,我們只能照做! (# - -)
約定:
源表: source
目標表: destination
偽SQL語句:
insert into destination (“字段") select 字段 from source;
這樣就簡單的完成了從一個表到另外一個表的復制。而我們可以利用語法上的甜頭,將自增長的主鍵和其他相關的字段忽略掉。從而讓系統來幫我們實現插入的連續性。
其次:
在導入完成后,使用count(*) 與select 自增長主鍵 from 表 order by 主鍵 desc limit 1 結合來判斷表內數據是否連續。
最后:
檢查表的自增長值是否為最后一條信息的id + 1 。 否則手動更改一下。
再將目標表與源表名稱對調。任務完成!
以上!
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!