mysql - SQL 重新生成 ID 以保持自动递增

标签 mysql sql

我正在寻找纯 SQL(或 MySQL)语法,我不知道是否可以,否则我会创建一个 php 脚本,但是......

我有一个包含一个主键的基本表:ID 和一些列。我不依赖于其他表。

目前我的行看起来像:

ID   Column1   Column2  
22   test      test
26   test2     test2
33   test3     test3
...

现在我想重新生成我所有的 ID 以保持秩序。示例:我将开始时间设置为 22

ID   Column1   Column2  
22   test      test
23   test2     test2
24   test3     test3
...

最佳答案

去那里看看:Reorder / reset auto increment primary key

但正如那里所说,它会破坏你们已经拥有的关系。但既然你不这样做也没关系

ALTER TABLE `table` DROP `id`;
ALTER TABLE `table` AUTO_INCREMENT = 1;
ALTER TABLE `table` ADD `id` int UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;

关于mysql - SQL 重新生成 ID 以保持自动递增,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6993105/

相关文章:

sql - 在sql server中使用isnumeric捕获异常

mysql - 使用sql sum函数得到错误的结果

mysql - MySQL同时更新多表

php - PHP Field Validation 使用什么方法

php - 动态莫里斯线字符串转换错误

sql - 在 PostgreSQL 中选择而不创建新表

SQL 计数操作

sql - 计算与日期不同的月份 SQL SERVER

MySQL 多对多 (n :n): Setting 1 entry as main entry

java - 获取mybatis最后插入记录的id