資料載入中

胡言亂語

如何將mysql table auto_increment重設


如何將mysql table auto_increment重設

資料表裡的資料加加減減,一不小心突然驚覺當初的欄位長度設定的不夠⊙_⊙

當然,你可以選擇再把欄位長度加長。

但事實上,在加加減減的過程中,其實有很多排序數是被浪費了~

例如你新增了資料共有6筆,auto_increment 分別是1、2、3、4、5、6。

今天,你刪掉了一筆資訊,也許是3,那麼,你不用期待4、5、6會自動降下來遞補。

也許你又刪了一筆資訊,也許是6,接下來你又新增了一筆資訊,猜猜會發生什麼事?

答案是,新增的一筆資訊 auto_increment 會從7開始排列。

就這樣無形中我浪費了很多排序數。

所以我得解決這個問題,讓資訊重新開始排列。

參考了連結網址

我用了以下方式~
SET @num := 0;
UPDATE my_table_name SET id = @num := (@num+1);
ALTER TABLE my_table_name AUTO_INCREMENT =1;

接下來的結果讓人滿意~
 

  • 資料表欄位長度設定問題
  • auto_increment 排序數浪費原因
  • 如何重新排列資料表資訊
  • 刪除資料後自動編號行為
  • 解決資料排序問題的方法
https://innstory.com/story-如何將mysql-table-autoincrement重設-1803

上一篇
 判斷字串是否存在於內容中

下一篇
PHP字串字數計算並隱藏 
  • 訪客

    Mark Chang 學習
    4 年又 339 天回覆

發表留言

作者簡介

離不開電腦的宅男


推薦閱讀

作者其他相關類別故事

CSS3濾鏡Filter的十種特效

CSS3濾鏡Filter的十…

Mark Chang 7 年又 298 天 2K

CSS3 濾鏡效果 主要是運用在圖片上,以實現一些特效。 grayscal()將網頁上影像轉換成灰階...

刪除已上傳至server的檔案

刪除已上傳至server的檔…

Mark Chang 7 年又 170 天 1.8K

管理系統,難免都會遇到要更新或刪除已經上傳到server的檔案。 總不能只是重新上傳卻又不把舊的...

PHP使用array_product函數求得陣列中的乘積

PHP使用array_pro…

Mark Chang 3 年又 200 天 1.2K

arrayproduct()是PHP中的一個內建函數,可以返回陣列中所有元素的乘積。 例如 若想要...