我有一个非常简单的 MySQL 表,它是这样的:
id comment user
1 hello name1
2 bye name2
3 hola name3
然后我删除了前两条评论,结果:
id comment user
3 hola name3
所以现在当我添加评论时:
id comment user
3 hola name3
5 chau name4
6 xxx name5
我的问题是,每当一行被删除时,我都需要它应该“重新开始”并看起来像这样。
id comment user
1 hola name3
2 chau name4
3 xxx name5
我想知道如何“重新启动”表以使其“始终”索引为 1、2、3 等。
提前致谢!!
我希望我已经足够清楚地解释了自己,我为我所有的“普通英语”感到抱歉,如果您认为某个词可能令人困惑,请随时进行编辑:) 并请提出任何需要的澄清!
顺便说一句:我没有添加我的任何代码,因为这是一个简化的情况,我虽然它更令人困惑,对其他人的帮助更少,但我认为这会有所帮助(或有必要)告诉我!
最佳答案
不能使用 MySQL 的自动增量功能来完成。您可以推出自己的解决方案,例如应用程序逻辑和数据库触发器之间的混合。但是,说真的,如果你的设计需要你回收 UNIQUE ID,它就会被严重破坏。
您不能创建另一个表来保存这样的引用(这可以通过查询最小值来完成)并让您的主表指向该辅助表吗?
编辑
这是我在谷歌上搜索的一个博客,用于解决您的问题: see here 。
关于php - 使 MySQL 自增 id(重新)从 1 开始,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6596525/