首先,您需要在 SQL Server 端创建存储过程。这是通过这样的声明完成的。运行此操作后,数据库中将存在一个名为“yourProcedure”的新存储过程对象。
CREATE PROCEDURE yourProcedure
@pKeyVar int, /* declare variables to be passed here */
@pFirstVar varchar(40),
@pSecondVar int,
@pThirdVar decimal(18,2)
AS
BEGIN
Update yourTable Set /* place what will be done here */
Col1 = @pFirstVar,
Col2 = @pSecondVar,
Col3 = @pThirdVar
WHERE KeyColumn = @pKeyVar
END
GO
创建存储过程后,您可以像这样调用它:
exec dbo.yourProcedure 12345, 'string value', 2, 2.05
有几种方法可以从 SSIS 调用它,但最常见的是Execute SQL Task
. 您可以将要传递的参数映射到保存内容的变量,并将任务放入循环逻辑中。
这是执行 SQL 任务的一个不错的演练。
密切关注映射参数到变量等部分。SSIS 的版本是 2005,但概念都是相同的。
评论后更新。
为了遍历记录集并获取值以传回 proc,您可以按照本文中提供的信息进行操作。