小编Chr*_*ris的帖子

执行具有多个结果集的存储过程

我正在使用 SSIS 2016。

  • 存储过程返回 4 个结果集。
  • 只有第一个结果集是相关的,需要写入表中。
  • 我无法修改存储过程。
  • 我不关心其他结果集中返回的任何数据。

存储过程位于 SQL Server 2016 数据库中。结果也将驻留在 SQL Server 2016 中。

我目前在 SSIS 2008 中使用 OLE DB 源中的“SQL 命令”数据访问模式运行此进程,如下所示。我将其放在 For Each 循环容器中,以便将一系列参数值传递给存储过程,因为我每天对不同的参数值执行多次。

SET FMTONLY OFF;

EXEC myProc
     @Param1 = ?,
     @Param2 =?,
     @Param3 = ?;
Run Code Online (Sandbox Code Playgroud)

默认情况下,SSIS 2008 仅返回第一个结果集,这对我有用,因为我只关心第一个结果集。

我正在使用本机 OLEDB SQL Server 客户端。据我所知,它改变了处理多个结果集的方式。我已经使用 来WITH RESULT SETS定义第一个结果集,但是如果我执行 SSIS 将失败,指示需要定义其他结果集。

简而言之,在 SSIS 2016 中复制 SSIS 2008 中的功能的最佳方法是什么?

sql-server ssis etl ssis-2008 ssis-2016

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

etl ×1

sql-server ×1

ssis ×1

ssis-2008 ×1

ssis-2016 ×1