SSIS - DataFlow - 为过程库存结果中的每一行设置一个值

时间:2013-01-24 08:53:01

标签: ssis dataflow

对于SSIS,我必须将数据从服务器传输到另一个服务器,但在最终目的地,我有一个像ID这样的列。 为了确定每行的新ID,我必须在最终服务器上执行存储过程。

是否可以在DataFlow中执行此操作并避免ControlFlow中的Foreach循环?

此致 纪尧姆。

2 个答案:

答案 0 :(得分:1)

不,我认为不是。我建议使用执行SQL任务来执行DataFlow任务,该任务将执行存储过程。

答案 1 :(得分:1)

您可以使用OLEDB command执行此任务。如果您的SP有return语句,请尝试捕获返回值并将其与输入列一起映射

exec ? = dbo.ReturnID

此语句将创建一个@RETURN_VALUE,您需要使用输入ID列进行映射。请记住在源本身中创建一个输入ID column为NULL或任何值,以便您可以使用OLEDB component

@RETURN_VALUE中映射此列
Update 1 :

试试这个: -

EXEC dbo.my_sp 'p1', 'p2',@variable_name=? output

@variable_name是存储过程中使用的输出变量名称