我有一个执行 sql 任务项,它从存储过程中获取多行数据。
声明了一个变量ObjShipment
在变量表下并使用以下信息将其分配到结果集下:
Result Set: Full result set
Result Name: 0
Variable Name: User::ObjShipment
我编写了一个脚本任务,其中将 ObjShipment 变量分配给 ReadOnly,但我想知道如何检索其中的数据?
存储过程返回多行,例如Id, ItemId, DateCreated..
,但是如果我只对 ItemId 感兴趣,我该如何检索它们呢?由于它返回多行,因此可能有多个 ItemId。
我是 ssis 的新手,如有任何帮助,将不胜感激!
因此,一般来说,您可以使用 SSIS 包中的对象变量作为 For Each 容器的枚举器。
- 创建一个 For Each 循环容器。
- 将枚举器设置为“对于每个 ADO 枚举器”。
- 将源变量设置为 User::ObjShipment。
- 在“变量映射”选项卡中将对象中的每一列分配给其自己的变量。
- 在 For Each 循环容器中,使用这些变量执行您想要的任何操作:将它们插入数据库、执行查找和审核等。
如果您要使用脚本任务,那么您需要做的就是
DataTable dt = new DataTable();
OleDbDataAdapter oleDa = new OleDbDataAdapter();
oleDa.Fill(dt, Dts.Variables["User::objShipment"].Value);
然后像任何旧的 DataTable 一样使用 dt。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)