【发布时间】:2019-03-10 02:00:58
【问题描述】:
在liquibase documentation 中写道,可以在使用 AND、OR、! 指定的变更集中定义上下文。和括号。但是我没有找到将contexts=" V1.0 AND V2.0" 参数传递给 liquibase(通过命令行)的方法,因为每次我这样做时,liquibase 都会生成一个空的 SQL 文件。我就是这样尝试的:
.\liquibase --url=offline:mssql? `
--changeLogFile="C:\Users\Ferid\Documents\Box Sync\PRIVATE_Ferid\liquibase-3.5.5-bin\cl.xml" `
--outputFile="C:\Users\Ferid\Documents\Box Sync\PRIVATE_Ferid\liquibase-3.5.5-bin\output.sql" `
--contexts="V1.0 AND V2.0" `
updatesql
当我只传递一个上下文或使用V1.0, V2.0 时它工作正常,以便他生成具有两个版本之一的所有变更集,但我只需要生成同时具有这两个上下文(V1.0 和 V2.0)的变更集。 0).
这是我的变更日志文件的上下文属性的示例
<changeSet author="Ferid" id="1536838228609-1" context="V1.0"> ... </changeSet>
<changeSet author="Ferid" id="1536838228609-2" context="V2.0"> ...</changeSet>
<changeSet author="Ferid" id="1536838228609-3" context="V1.0 AND V2.0"> ...</changeSet>
我尝试了不同的语法,但没有一个适合我。我正在使用 liquibase 3.5.5。
【问题讨论】:
标签: command-line migration database-migration liquibase