MySQL将x添加到当前主键值

时间:2011-04-29 17:56:07

标签: mysql-management

我有一个包含主键的数据库,但我的老板要我将其重新编号为(当前PK值)+ 800000 ...

因此,PK 1将成为800001,PK 2354将成为802354等......

有一种简单的方法可以做到这一点,还是应该编写脚本?

1 个答案:

答案 0 :(得分:0)

执行此操作的最直接方法可能是从该表中删除主键(不是列,只删除索引),更新所有值以增加800000,然后再次为该列添加主键。 / p>

alter table rptapp_batches change column id id int not null;
alter table rptapp_batches drop primary key;
update rptapp_batches set id = id + 800000;
alter table rptapp_batches add primary key (id);
alter table rptapp_batches change column id id int auto_increment;

如果pk也是auto_increment,则需要第一个和最后一个语句。