当我执行sqloutput命令时,liquibase 3.2.2在databasechangelog表上的每个插入前面都有当前的模式名称。
INSERT INTO <MY_TEST_SCHEMA>.DATABASECHANGELOG (ID, AUTHOR, FILENAME, DATEEXECUTED, ORDEREXECUTED, MD5SUM, DESCRIPTION, COMMENTS, EXECTYPE, LIQUIBASE) VALUES (...);
这迫使我处理结果文件以删除“MY_TEST_SCHEMA”。 string,因为我们在将生成的文件启动到生产之前对测试模式执行liquibase。
我一直在使用liquibase 2.0.3很长时间,这种行为在liquibase 3.0.0中是新的。
有没有办法阻止liquibase添加架构名称?我已经尝试使用defaultSchemaName参数,但它不起作用。
答案 0 :(得分:1)
您应该能够使用--outputDefaultSchema = false和--outputDefaultCatalog = false标志来禁止它们被包含在内。
看起来没有遵循标志,至少从3.2.2中的命令行开始。我创建了https://liquibase.jira.com/browse/CORE-2088并添加了一个3.3.0的修复程序,它应该会在下周左右发布。