SSIS - '执行SQL'任务和记录集

问题描述:

如何在使用SSIS时访问'Execute SQL'任务中的'RecordSet'?SSIS - '执行SQL'任务和记录集

我已经查看了执行SQL任务编辑器中的参数映射选项,并找不到一种对象类型,以允许我将持有我的记录集的变量传递给任务。

你不能直接。记录集是指向数据集的内存指针,而ExecuteSql任务则是从数据库访问数据。你可以使用一个foreach容器和一个executeSql任务,在我听说过的一个叫做“Shredding”的技术中,你将记录集作为枚举器指向foreach,将记录集中的列设置为循环内部的变量,并通过这些单独的记录值(列)作为executeSql任务的参数。

Andy Leonard在描述use of the ForEach方面做得很好。

我认为这是可能的。如果变量的类型是对象,则可以将整个记录集作为参数传递给执行SQL任务中执行的某个SQL查询。不确定在你的特定情况下是否有任何问题,或者我的问题都是错误的。