flyway在MySQL上执行“alter table ... modify`col`auto_increment”但不改变`col`值

时间:2012-11-05 15:41:43

标签: mysql sql flyway

当我从MySQL命令行或Workbench执行这些句子时......

-- 1) Add a column `id`
ALTER TABLE `DEVICES` ADD `id` BIGINT(20) NOT NULL;
-- 2) Add an index, necessary for auto_increment
ALTER TABLE `DEVICES` ADD index `devices_id_index`(`id`);
-- 3) Makes `id` auto_increment and inserts sequential numbers it (from 1 to N)
ALTER TABLE `DEVICES` MODIFY `id` BIGINT(20) AUTO_INCREMENT;

...我得到的是一个新列id,它填充了从1到N的自动增量值。

但是当我从 flyway 执行时,列id在每一行都有一个零,因为最后一句不会更改其值。

你知道为什么吗?

除了使用过程插入这些值之外的任何解决方案/解决方法吗?

谢谢!

费兰

0 个答案:

没有答案