我有一个文件 liquibase.properties 包含以下内容
driver: com.microsoft.sqlserver.jdbc.SQLServerDriver
classpath: ./sqljdbc4-2.0.jar
url: jdbc:sqlserver://localhost:1433;databaseName=staticDB
username: sa
password: admin@123
changeLogFile: myChangeLog.xml
我正在使用命令 liquibase update,这样数据库更改就会部署到 staticDB 数据库上
我想传递动态数据库名称以及 liquibase 更新命令,以便我可以在多个数据库上部署数据库更改
我已经更改了属性文件中的
url:
,如下所示
url: jdbc:sqlserver://localhost:1433;databaseName=${database}
我尝试过使用像
这样的命令liquibase update -Ddatabase="Liquibase_Param"
但是我无法正确执行 liquibase 命令,因为出现以下错误
Unexpected error running Liquibase: com.microsoft.sqlserver.jdbc.SQLServerException: The connection string contains a badly formed name or value.
请告诉我如何在运行 liquibase update 命令时传递动态数据库名称
properties
文件使用等于运算符=
而不是冒号:
来分配值:
driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
classpath=./sqljdbc4-2.0.jar
url=jdbc:sqlserver://localhost:1433;databaseName=staticDB
username=sa
password=admin@123
changeLogFile=myChangeLog.xml