updateSql模式下的liquibase databasechangelog表

问题描述 投票:0回答:2

当我从更改日志文件生成SQL文件时,databasechangelog表在与生成的SQL文件相同的文件夹中创建为CSV文件,但我希望它作为我的SQL文件中的表。我用liquibase 3.5.5。通过命令行并使用此命令:

 .\liquibase --url=offline:mssql? `
--changeLogFile="C:\Users\Ferid\Documents\Box Sync\PRIVATE_Ferid\liquibase-3.5.5-bin\Changelog.xml" `
--outputFile="C:\Users\Ferid\Documents\Box Sync\PRIVATE_Ferid\liquibase-3.5.5-bin\all.sql" `
updatesql

我没有找到在SQL文件中集成databasechangelog表的命令。它仅在我使用update语句而不是updatesql时集成,但我需要SQL文件。

sql command-line migration liquibase
2个回答
2
投票

有一种方法可以使用url中的outputLiquibaseSql参数包含databasechangelog表

.\liquibase --url=offline:mssql?outputLiquibaseSql=true `
--changeLogFile="C:\Users\Ferid\Documents\Box Sync\PRIVATE_Ferid\liquibase-3.5.5-bin\Changelog.xml" `
--outputFile="C:\Users\Ferid\Documents\Box Sync\PRIVATE_Ferid\liquibase-3.5.5-bin\all.sql" `
updatesql

这有时会导致CMD或PowerShell出现问题(因为有问号),因此将它包含在liquibase.properties文件中会很有帮助。


1
投票

您需要将您使用的URL更改为非脱机版本。

© www.soinside.com 2019 - 2024. All rights reserved.