我在数据库中有一个使用“自动增量”主键创建的表。直到现在我才返回并删除了一些行。
问题是,我希望表格为 1->X,编号列中没有任何孔(换句话说,它应该是 1,2,3,4,5,6,7,8,9 ,10 - 但现在更像是 1,2,3,7,8,10。
有没有办法可以通过 mysql 重新设置该列的值以正确递增???
最佳答案
使用用户定义的变量(该变量在每行期间都会递增)和 order by
来防止在更新过程中出现重复的 id:
SET @x := 0;
UPDATE mytable SET
id = (@x := @x + 1)
ORDER BY id;
关于mysql - 如何更正已删除行的自动增量字段(1,2,3,4,5 - 现在是 1,3,5),但我希望它是 1,2,3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20624599/