2012-03-08 55 views
7

我试图用dtexec命令行实用程序执行SSIS包。dtexec错误 - 设置多个变量

我对DTEXEC语法如下:

dtexec /FILE "C:\DirectLoads\RefEDWDirectLoads.dtsx" /Set \Package.Variables  
[User::SourceDirectory].Properties[Value];"C\Test" /Set \Package.Variables 
[User::EDWConnection].Properties[Value];"Data Source=hts0476;Initial 
Catalog=EDW;Provider=SQLNCLI10.1;Integrated Security=SSPI;" 

当执行其投掷的错误:

Argument ""\Package.Variables[User::EDWConnection].Properties[Value];Data 
Source=hts0476;Initial Catalog=EDW;Provider=SQLNCLI10.1;Integrated Security=SSPI;"" 
for option "set" is not valid. 

回答

13

是得到了这个固定为

dtexec /FILE "C:\DirectLoads\RefEDWDirectLoads.dtsx" /Set \Package.Variables 
[User::SourceDirectory].Properties[Value];"C\Test" /Set \Package.Variables 
[User::EDWConnection].Properties[Value];\""Data Source=hts0476;Initial 
Catalog=EDW;Provider=SQLNCLI10.1;Integrated Security=SSPI;"\" 
+0

您好,感谢这个问题,答案 - 当我尝试上述,从PowerShell脚本,设置一个ConnectionString的值,如果我像你有它认为“转义引号”Dat一个“是一个脚本/ cmdlet - 如果我不这样做,它说Set参数是无效的。有任何想法吗? – SpaceBison 2013-09-20 11:24:09

+0

工作正常。谢谢。 :) – 2014-12-09 14:30:45

+0

为了澄清,解决方法是第二个变量的值需要双引号。不仅仅是“”数据源= hts ...“”而是“\”“数据源= hts ...”\“'。 – 2015-09-09 22:34:27