mysql重新设置主键生成策略为auto_increment时报错:resulting in duplicate entry '1' for key 'PRIMARY'
生活随笔
收集整理的這篇文章主要介紹了
mysql重新设置主键生成策略为auto_increment时报错:resulting in duplicate entry '1' for key 'PRIMARY'
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
現在有一個標簽表,里面已經填入了一些數據了,想把主鍵生成策略改成自增的:
ALTER TABLE `tags` CHANGE COLUMN `Id` `Id` INT(11) NOT NULL AUTO_INCREMENT但是發現改不了,報錯:ERROR 1062: ALTER TABLE causes auto_increment resequencing, resulting in duplicate entry '1' for key 'PRIMARY'
可是當前表中數據的主鍵并沒有重復的呀,所以原因到底是什么呢?
這種情況的發生,是因為表中包含了 ID 為0(或負值)的記錄。 需要更新這些記錄,將ID換為正值,才可以在該列上設置 auto_increment。當然,設置好自增策略后,如果你想的話,還可以繼續將ID值改為0(或負值)。
總結
以上是生活随笔為你收集整理的mysql重新设置主键生成策略为auto_increment时报错:resulting in duplicate entry '1' for key 'PRIMARY'的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: A Native Collection
- 下一篇: 修改数据库主键为自增长时报错“[Err]