【发布时间】:2013-03-05 04:59:44
【问题描述】:
我试图在执行 Flyway 时传递一个占位符值。
在调用 flyway.migrate 之前,我将添加占位符,如下所示:
String location="C:\resource";
flyway.getPlaceholders().put("resource_location",
location);
脚本包含如下插入语句:
INSERT [dbo].[resource] ([settings_id],
[prop_key], [prop_value])
VALUES (1, N'resource.path', $(resource_location)/test);
但这不起作用。请告诉我如何将占位符的值传递给上述插入脚本。
【问题讨论】:
-
我相信你应该使用
C:\\resource而不是C:\resource -
是的...我刚刚将资源路径指定为常量。相反,这将从服务器启动时获取。但问题在于我传递占位符的方式。我收到以下异常:由 com.microsoft.sqlserver.jdbc.SQLServerException 引起:'(' 附近的语法不正确。