liquibase:每次我 运行 应用程序时执行一个变更集
liquibase : execute a changeset each time I run the application
我正在使用 liquibase 在我的 Mysql 数据库中加载数据,如下所示:
<loadUpdateData encoding="UTF-8"
primaryKey="pk_id"
file="config/liquibase/site.csv"
separator=";"
tableName="site">
<column name="site" type="STRING"/>
</loadUpdateData>
如何在我每次 运行 我的应用程序时强制 liquibase 执行此任务(以防 site.csv 发生变化)?我的问题是,当liquibase执行完变更集后,它不会再执行了。
如果您只想 运行 它,如果 CSV 文件已更改,请将 runOnChange="true"
作为属性添加到 changeSet
。
<changeSet id="42" author="arthur" runOnChange="true">
<loadUpdateData>
...
</loadUpdateData>
</changeSet>
如果您总是想要运行它,请改用runAlways="true"
。
查看手册了解更多详情:
http://www.liquibase.org/documentation/changeset.html
我正在使用 liquibase 在我的 Mysql 数据库中加载数据,如下所示:
<loadUpdateData encoding="UTF-8"
primaryKey="pk_id"
file="config/liquibase/site.csv"
separator=";"
tableName="site">
<column name="site" type="STRING"/>
</loadUpdateData>
如何在我每次 运行 我的应用程序时强制 liquibase 执行此任务(以防 site.csv 发生变化)?我的问题是,当liquibase执行完变更集后,它不会再执行了。
如果您只想 运行 它,如果 CSV 文件已更改,请将 runOnChange="true"
作为属性添加到 changeSet
。
<changeSet id="42" author="arthur" runOnChange="true">
<loadUpdateData>
...
</loadUpdateData>
</changeSet>
如果您总是想要运行它,请改用runAlways="true"
。
查看手册了解更多详情: http://www.liquibase.org/documentation/changeset.html