【发布时间】:2014-02-24 23:25:12
【问题描述】:
我想更好地了解 Liquibase 如何执行变更集。
1)
a) 例如,我有一个包含 4 个更改集的更改日志,我执行 updateDatabase (http://www.liquibase.org/documentation/ant/updatedatabase_ant_task.html)。 Liquibase 将执行 4 个变更集。
b) 如果我再次运行相同的更改日志,Liquibase 不会执行任何设置。
c) 如果我将新的更改集添加到更改日志并运行更改日志,Liquibase 将只执行新的更改集。
问题:
Liquibase 如何知道要执行哪些更改集?
Liquibase 如何知道哪些变更集已经执行?
2) 变更集 ID 有多重要?我可以在更改日志执行后更改它吗?
3) 变更集作者有多重要?我可以在更改日志执行后更改它吗?
4) 如果我执行 rollbackDatabase (http://www.liquibase.org/documentation/ant/rollbackdatabase_ant_task.html) 会发生什么? Liquibase 如何知道要回滚的更改集?
a) 如果我在 1 a) 之后执行回滚会发生什么。 Liquibase 会调用位于每个更改集中的回滚元素(4 个回滚元素)吗?
b) 如果我在 1 b) 之后执行回滚会发生什么。 Liquibase 如何知道不调用任何回滚元素?
c) 如果我在 1 c) 之后执行回滚会发生什么。 Liquibase 会仅调用新更改集的回滚元素吗?
【问题讨论】:
标签: liquibase