我有一张大约有10k行的表,我已导入了这些行。该ID是我的应用程序的重要列,它必须订购。目前,我有类似的东西:1,2,3,4,5 .... 5789,9275,9276 .....
它从5789跳到9275.我有什么办法可以重置自动增量但是还能将它应用到桌面上吗?这意味着,现在它将开始从1到10k重新给他们IDS
谢谢!
答案 0 :(得分:1)
ALTER TABLE <tablename> AUTO_INCREMENT=<new_value>;
当然,您需要手动修复高ID和所有引用。
但是,你为什么关心?身份证上是否有漏洞真的很重要吗?如果是,您可能希望使用始终设置为MAX(col) + 1
而不是AUTO_INCREMENT列的单独列。
答案 1 :(得分:1)
您可以通过简单地发出此查询来将auto_increment值重置为您想要的任何内容:
ALTER TABLE <tbl> AUTO_INCREMENT = <n>;
其中tbl是你的表名,n是启动它的值。但是,如果您已在该表中存在现有ID,我相信它只会将下一个插入的项ID设置为ID列的max(id) + 1