【发布时间】:2014-09-02 07:18:23
【问题描述】:
我在 Liquibase 中运行 updateSQL 命令行时发现了 2 个问题
-
当通过 sqlplus 命令行运行 sql 时,Liquibase updateSQL 输出中的最后一条语句(即插入 DBCHANGELOG 表)不会自动提交
因此,虽然变更集被执行,但 DBCHANGELOG 表没有插入语句来记录它。因此,当我再次运行 updateSQL 时,最后一个变更集再次在 SQL 输出中创建,这是不正确的。
-
Liquibase 不会验证/检查 SQL 中的语法错误。
因此,即使变更集 SQL 失败,对变更集的 DBChangeLog 表的插入也会成功,这是不正确的。如果变更集 SQL 实际失败,是否有办法使变更集后面的插入语句停止/失败?
非常感谢任何帮助...我们离实现 Liquibase 已经如此接近了...!!
【问题讨论】:
-
liquibase.jira.com/browse/CORE-1653 有望进入 liquibase 3.3.0,这将有助于在 updateSql 中的每个 changeSet 末尾添加“提交”语句
标签: sql database oracle liquibase