MySql自增主鍵id插入失敗或刪除後,再插入亂序問題
阿新 • • 發佈:2019-01-30
在對資料庫進行操作的時候,資料庫的表裡的id是自增的,當資料被刪除或者新增或者插入失敗時,id會一直增上去,變得很亂,不會按照順序,下面是兩種解決辦法:
-
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斷層的位置!!!