我有一个表,其结构如下。
create table test_table (id INT NOT NUll AUTO_INCREMENT
, name varchar(100),
primary key (id))ENGINE=INNODB
Select * from test_table;
id name
1 a
2 b
3 c
现在我想将 id 增加一个数字让我们说 2 所以最终结果应该是
Select * from test_table;
id name
3 a
4 b
5 c
我可以这样做的方法是,首先删除 PK 和自动增量,然后更新表:
update test_table set id=id+2;
另一种方法是制作一个没有 PK 和自动增量的临时表,然后将结果提取到主表。
有没有其他方法可以在不破坏表结构的情况下做到这一点?我正在使用 MYSQL。