我正在尝试在SSIS中使用Execute SQL task
。但它不接受路径中的变量值?文件名是动态的,因此必须来自变量。以下代码是执行SQL任务中的直接输入。
USE [master]
go
RESTORE DATABASE MyDb FROM
DISK = N'c:\DBRestores\?'
WITH REPLACE
go
然后我使用Parameter Mapping
映射该值,但任务失败。
有任何帮助吗?感谢
答案 0 :(得分:1)
您可以在表达式中设置动态参数。
在Execute SQL Task Editor
中,转到Expressions
- > Property
- > SQLStatementSource
- > Expression
并在其下面添加SQL,在其中替换您的动态变量名称,然后单击Evaluate Expression
并检查评估值。
"USE [master]
go
RESTORE DATABASE MyDb FROM
DISK = N'c:\\DBRestores\\" + @[User::VariableParameter] + "'
WITH REPLACE
go"
如果评估值与预期值一致,则脚本将接受来自变量的动态文件名。