Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.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 将检索到的XML值存储为字符串变量,以便在子包中使用_Sql Server_Xml_Variables_Ssis_Etl - Fatal编程技术网

Sql server 将检索到的XML值存储为字符串变量,以便在子包中使用

Sql server 将检索到的XML值存储为字符串变量,以便在子包中使用,sql-server,xml,variables,ssis,etl,Sql Server,Xml,Variables,Ssis,Etl,我希望将XML检索值存储为字符串变量,以便以后在SSIS中的子包中使用。情况如下: 我正在数据流任务(a)中从XML文件检索ID。我需要将此ID保存为变量,以便稍后可以通过包配置将其传递给子包并在那里使用。问题是,对于“Recordset Destination”,我只能将其存储为对象类型,然后我似乎无法在我的子包中将其再次转换为字符串 我想我可以用foreach循环来解决这个问题,但我觉得这不是很有效。还有别的办法吗?我附上了一些截图,让情况更清楚一些 谢谢 屏幕截图 您可以使用脚本组件将I

我希望将XML检索值存储为字符串变量,以便以后在SSIS中的子包中使用。情况如下:

我正在数据流任务(a)中从XML文件检索ID。我需要将此ID保存为变量,以便稍后可以通过包配置将其传递给子包并在那里使用。问题是,对于“Recordset Destination”,我只能将其存储为对象类型,然后我似乎无法在我的子包中将其再次转换为字符串

我想我可以用foreach循环来解决这个问题,但我觉得这不是很有效。还有别的办法吗?我附上了一些截图,让情况更清楚一些

谢谢

屏幕截图


您可以使用脚本组件将ID值存储在变量中,只需添加脚本组件作为目标,在脚本表单中选择变量作为
Read\Write
变量。并在脚本编辑器中的
PostExecute()
函数中为该变量赋值

有关详细信息,请参阅以下链接之一:


工作正常!非常感谢你这么做。我不知道我可以使用脚本组件作为目标!听起来您可能根本不需要数据流任务。您只需在控制流中有一个执行SQL任务来写入变量即可。@KeithL,我想这是可能的,但我无法读取控制流中的XML,对吗?