Mysql重置auto_increment不适用于新的ID,但适用于所有(也是旧的ID)

时间:2011-08-09 20:39:14

标签: php mysql auto-increment

大家都有重置所有auto_increment id的SQL函数吗?

我的意思是,我有这种情况(id = 1,id2 = 2,id3 = 3)

一旦我删除id我想要返回这种情况(id2 = 1,id3 = 2)等等。

我需要一个脚本吗?

2 个答案:

答案 0 :(得分:0)

您可以重置整个表格的AUTO_INCREMENT

ALTER TABLE table AUTO_INCREMENT=1;

但是您无法真正回去填写已删除的各个行中的值。 auto_increment值应该是唯一的,但如果删除发生或插入新行并且为auto_increment列设置了显式值,则不保证保持顺序。

如果您需要将它们再次修改为顺序,则必须在代码中完成,可能遍历所有行并单独执行UPDATE语句。

答案 1 :(得分:0)

ID为Id,表示必须永不更改!至少在良好的数据库设计中。我是你天生就有的东西,你死了。