1

在我正在查看的当前文档中,我无法立即看到:

以下是否可以在 Liquibase 中工作,并使用包含的 SQL 文件进行回滚?

<changeSet author="username" id="85138">
    <sql splitStatements="false">
        UPDATE some_table ...;
    </sql>
    <rollback>
        <include file="path/to/rollback.sql"/>
    </rollback>
</changeSet>

如果我错过了文档中的适当位置,请随时指出相关部分。

4

2 回答 2

9

你可以做的是使用 sqlFile:

<changeset ..>
  <sql>...</sql>
  <rollback>
    <sqlFile path="rollback.sql" />
  </rollback>
</changeset>

正如另一篇文章所述,include 仅用于变更日志组合 - 包括其他变更日志。

于 2012-10-07T19:24:32.847 回答
0

不,那是行不通的。include 标记旨在包含更多的变更日志 XML 文件,而不是包含任意信息。

它记录在这里:http ://www.liquibase.org/manual/include

它并没有具体说你“不能”,但我试过了 - liquibase 会为此大喊大叫。=)

于 2012-09-18T18:34:12.747 回答