【问题标题】:<rollback> - Liquibase -<回滚> - Liquibase -
【发布时间】:2014-02-19 17:33:46
【问题描述】:

我想在&lt;changeSet&gt; 中的多个&lt;update&gt; 元素中的每一个中插入一个&lt;rollback/&gt; 元素。而不是为整个&lt;changeSet&gt; 使用单个&lt;rollback/&gt; 元素。这行得通吗?还是 &lt;rollback/&gt; 元素的上下文只是整个 &lt;changeSet&gt; 事务?

我假设这是否可行,&lt;rollback&gt; 出现在&lt;update&gt; 之外,在每个&lt;/update&gt; 之后?

【问题讨论】:

    标签: rollback liquibase


    【解决方案1】:

    每个 changeSet 只能有一个回滚块。每个更新块不能有单独的。

    Liquibase 不跟踪单个更新,只跟踪 changeSet,因此无法指定要回滚的 changeSet 的特定部分。

    &lt;rollback&gt; 标签内可以有多个 &lt;update&gt;&lt;sql&gt; 块,但只能有一个回滚标签

    【讨论】:

    • 提醒一下:回滚是在 changeSet 成功执行之后,您以后想撤消它。如果 changeSet 失败,Liquibase 将使用数据库的标准回滚支持回滚事务,并将恢复任何已成功运行的更新语句。
    猜你喜欢
    • 1970-01-01
    • 2012-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-19
    • 2018-09-13
    • 2011-03-25
    • 2021-01-18
    相关资源
    最近更新 更多