我有多个更改日志,其中一个更改日志具有检查表是否存在的前提条件,如果存在,则跳过运行迁移。
我的更改日志文件
DateTime startDate = (DateTime)row["Course_StartDate"];
DateTime endDate = (DateTime)row["Course_EndDate"];
前提条件从未被检查过,它直接用于创建“人”'表。由于刷新,我在这个数据库实例中有这个表,如果它不存在,我希望这个迁移运行并跳过前置条件。
错误我
--liquibase formatted sql
--preconditions onFail:MARK_RAN onError:MARK_RAN
--precondition-sql-check expectedResult:0 select COUNT(*) C from dba_tables where UPPER(table_name) = 'PERSON' and upper(owner) = 'INT'
--changeset nvoxland:3
create table int.person (
id int not null primary key,
firstname varchar(80),
lastname varchar(80) not null,
state varchar(2)
);
答案 0 :(得分:0)
没关系,我自己解决了这个问题
前提条件的排序很重要,更新到以下内容,这次运行正常
--liquibase formatted sql
--changeset nvoxland:3
--preconditions onFail:MARK_RAN onError:MARK_RAN
--precondition-sql-check expectedResult:0 select COUNT(*) C from dba_tables where UPPER(table_name) = 'PERSON' and upper(owner) = 'INT'
create table int.person (
id int not null primary key,
firstname varchar(80),
lastname varchar(80) not null,
state varchar(2)
);