我们可以为执行 sql 任务提供多少结果测试

how many result test we can give a for execute sql task

我有一个 ssis package 有一个 exectue sql 任务。我试图通过添加 stored procedure as sql 语句来修改任务。 stored procedure returns 两个结果集。

存储过程:

create proc test
as
begin

select EmpID from Employee

select PersonID from person
end

我在 parmeter name 0 & 1 任务中将 result sets 映射到 result 设置选项卡,并将它们分配给两个 variables.

当我 运行 我得到的包低于错误

[Execute SQL Task] Error: There is an invalid number of result bindings returned for the ResultSetType: "ResultSetType_Rowset".

然而,如果我删除一个 result set 并执行 package ,它会 运行 成功。是否可以添加多个结果集来执行sql任务?我在这里缺少什么?

谢谢

Execute SQL 任务无法访问存储过程 return 编辑的多个结果集。它只能访问第一个结果集。

您在屏幕截图中显示的“结果集”选项卡不是用于将不同的结果集分配给对象类型变量。它用于将不同的列分配给标量变量。

如果您将存储过程更改为 return 具有两列的单个结果集,那么您在屏幕截图中的方式就可以了。