最初に、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 に戻すには、この記事に記載されている情報に従ってください。