1. 程式人生 > >MySql自增主鍵id插入失敗或刪除後,再插入亂序問題

MySql自增主鍵id插入失敗或刪除後,再插入亂序問題

在對資料庫進行操作的時候,資料庫的表裡的id是自增的,當資料被刪除或者新增或者插入失敗時,id會一直增上去,變得很亂,不會按照順序,下面是兩種解決辦法:

  1. alter table tablename drop column id;
    alter table tablename add id mediumint(8) not null primary key auto_increment first;
    

           這個時候就好了,id就會自動續上了!!!

     2.

           +----+
           |  1 |
           |  2 |
           |  3 |
           |  7 |
           +----+

           看到新插入的記錄出現錯誤時,要繼續之前的id序列,需要在刪除資料後,重置下自動增長的位置           

delete from tt where id=7;
alter table tt auto_increment=4
insert into tt values(null);


           select * from tt;
           +----+
           | id |
           +----+
           |  1 |
           |  2 |
           |  3 |
           |  4 |
           +----+

           重新設定後,自增主鍵就會接上了,這樣可以避免出現id斷層

以上兩種方法,個人感覺這個方法1較好,不需要考慮id斷層的位置!!!