Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 将值/变量传递给Dtsx/SET\Package.Variables[用户::名称变量]&引用;“价值”;错误_Sql Server_Batch File_Ssis_Flat File - Fatal编程技术网

Sql server 将值/变量传递给Dtsx/SET\Package.Variables[用户::名称变量]&引用;“价值”;错误

Sql server 将值/变量传递给Dtsx/SET\Package.Variables[用户::名称变量]&引用;“价值”;错误,sql-server,batch-file,ssis,flat-file,Sql Server,Batch File,Ssis,Flat File,我想向ssis包传递一个值,但返回了一个错误 我使用批处理执行命令 dtexec /F "c:\MyPackage.dtsx" /SET \Package.Variables[User::Valore].Properties[Value];2 这是错误(警告): C:>dtexec/F“C:\AnagraficaTOC.dtsx”/SET\Package.Variables[User::Valore].Prop 惯性[价值];2. Microsoft(R)SQL Server执行包实用程序 版

我想向ssis包传递一个值,但返回了一个错误

我使用批处理执行命令

dtexec /F "c:\MyPackage.dtsx" /SET \Package.Variables[User::Valore].Properties[Value];2
这是错误(警告):

C:>dtexec/F“C:\AnagraficaTOC.dtsx”/SET\Package.Variables[User::Valore].Prop 惯性[价值];2. Microsoft(R)SQL Server执行包实用程序 版本10.50.2500.0,适用于64位 版权所有(C)微软公司2010。版权所有

开始时间:11:30:10 警告:2011-11-12 11:30:10.95 代码:0x80012017 资料来源:AnagraficaTOC 描述:包路径引用了一个找不到的对象:“\Pa” ckage.Variables[User::Valore].Properties[Value]”。这在尝试失败时发生 用于将包路径解析为找不到的对象。 结束警告 DTExec:无法设置\Package.Variables[User::Valore]。属性[Value]值t o 2。 开始时间:11:30:10 完成时间:11:30:10 已用时间:0.203秒

这是什么意思?语法在我看来是正确的,我在很多网站上都查过了,有什么问题吗?
谢谢大家

假设变量名为
Valore
,并且位于包级别范围内,则语法看起来是正确的

变量是区分大小写的,所以如果它被命名为valore、valore等,它将不匹配

变量可以在程序中的任何级别创建,因此范围很重要。找到变量Valore并验证其作用域在包级别(作用域将与package.Name属性匹配)。这是一个如何引用嵌套在序列容器中的数据流任务中声明的变量的示例

\Package\Sequence Container\Data Flow Task.Variables[User::something].Properties[Value]

我把一个文件放在一起,用你的输入调用它。它工作得很好

C:\src\SSISHackAndSlash\SSISHackAndSlash>dtexec /F ".\AnagraficaTOC.dtsx" /SET \Package.Variables[User::Valore].Properties[Value];2
Microsoft (R) SQL Server Execute Package Utility
Version 10.50.2500.0 for 64-bit
Copyright (C) Microsoft Corporation 2010. All rights reserved.

Started:  8:05:45 AM
Warning: 2011-11-12 08:05:45.93
   Code: 0x00000000
   Source: Script Task value check
   Description: Valore : 2
End Warning
DTExec: The package execution returned DTSER_SUCCESS (0).
Started:  8:05:45 AM
Finished: 8:05:45 AM
Elapsed:  0.328 seconds
我还从批处理文件内部使用上述命令行进行了测试,它也按预期工作

最后,你似乎已经为我们删除了你的输入

"dtexec /F "c:\MyPackage.dtsx" /SET \Package.Variables[User::Valore].Properties[Value];2"
vs


尽管第二个示例中的属性中有空格,但我假设这与复制值有关,因为错误消息具有正确的路径。第一个在错误的地方有引号(至少当我运行它时,如果我收到错误-找不到指定的路径),问题可能是您正在查看包的旧版本(或者您有多个副本)?

也有同样的问题,通过在ssis变量窗格中将名称空间从配置更改为用户来解决此问题

谢谢!您能提供一个传递字符串类型变量的示例吗?这并不能真正回答问题。如果您有不同的问题,可以单击以提问。一旦你有足够的时间,你也可以吸引更多的注意力这和我昨天遇到的问题完全一样,也是我用来解决这个问题的确切方法
dtexec /F "c:\AnagraficaTOC.dtsx" /SET \Package.Variables[User::Valore].Prop erties[Value];2