資料載入中

胡言亂語

如何將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 年又 338 天回覆

發表留言

作者簡介

離不開電腦的宅男


推薦閱讀

作者其他相關類別故事

解決svchost.exe消耗記憶體問題

解決svchost.exe消…

Mark Chang 7 年又 309 天 8.6K

根據微軟中文知識庫編號314056的文件說明:「SVCHOST.EXE是從動態連結程式庫(DLL...

在PHP中如何將NAN轉換為0

在PHP中如何將NAN轉換為…

Mark Chang 5 年又 31 天 833

首先我會得到NAN是因為我有一個計算結果為0的值然後我讓他除以0,結果就得到了NAN 首先甚麼是N...

PHP重新排列陣列中的元素shuffle函數

PHP重新排列陣列中的元素s…

Mark Chang 3 年又 319 天 1.3K

shuffle() 是可以將陣列中元素的順序重新洗牌的函數。 甚麼時候用的到? 例如最近寫著一個...