【发布时间】:2017-07-12 22:46:44
【问题描述】:
我有 2 个 Liquibase 变更集示例,其中第二个语句失败(尝试使用现有主键插入记录),但第一个语句成功:
数据库更改日志中失败/没有记录:
--changeset yura:2
insert into test2 values (4, 'test4');
insert into test2 values (2, 'test2');
部分写入,databasechangelogg中没有记录:
--changeset yura:2
insert into test2 values (4, 'test4');
ALTER TABLE test2 ADD name varchar(50);
当我尝试直接在 MySql 上运行这些语句时,两者的行为是一致的,因为 MySql(InnoDB) 会将每个语句包装在一个单独的事务中。 为什么 Liquibase 不一致?
【问题讨论】:
-
检查
autocommit。此外,ALTER将终止任何事务。
标签: java mysql innodb liquibase