[MySQL] 如何重設 AUTO_INCREMENT 欄位值

本篇文章更新時間:2023/04/28
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知。
一介資男的 LINE 社群開站囉!歡迎入群聊聊~
如果本站內容對你有幫助,歡迎使用 BFX Pay 加密貨幣新台幣 贊助支持。


使用 MySQL 資料庫剛好碰到匯入資料有誤,刪除資料但又忘記重新設定過自動累加的 AUTO_INCREMENT 欄位,導致原本預想中的結果是 id 1~100 變成 101~200

或是原本資料列中想砍掉 51~100 ,但新增加的資料變成 101 開始,整個看起來會有斷層: 1~50 下一號 101 ,這種阿雜情況XD

然後逛一逛 Stack Overflow 發現這篇 How to reset AUTO_INCREMENT in MySQL 解法如下:

SET  @num := 0;
UPDATE your_table SET id = @num := (@num+1);

設定變數從 0 開始去累加,重設 id 這個欄位的數字。

最後再去更新資料表中當前 AUTO_INCREMENT 的值,看是要重設還是設定成當前累加的數字。

ALTER TABLE your_table AUTO_INCREMENT =1;

上述是重設的方法


Share:

作者: Chun

資訊愛好人士。主張「人人都該為了偷懶而進步」。期許自己成為斜槓到變進度條 100% 的年輕人。[///////////____36%_________]

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


文章
Filter
Mastodon