web-dev-qa-db-ja.com

SSISでストアドプロシージャを呼び出す方法

テーブルからデータをクエリし、各行で別のデータベースのストアドプロシージャを呼び出すSSISパッケージを作成しようとしています。

私の古いDTSパッケージでは、これをやっていた:

EXEC myStoredProcedure ?, ?, ?

...そしてパラメータをマッピングしました。ただし、SSISでは、この機能を実現する方法がわかりません。

最初にデータのクエリを実行するデータフロータスクがあります。データをOLE DB Destinationに渡します。データアクセスモードを「SQLコマンド」に設定しますが、上記のSQLを入力しようとすると、「Invalid Parameter Count」が取得されます。 SQLを解析します。[マッピング]画面にアクセスできません。

20
John Bubriski

データフローでは、OLE DB Commandを使用して、データフローの各行に対してSQLステートメントを実行できます ----(MSDN documentation

または、ソース結果セットをデータ型オブジェクトの変数に保存し、Foreach Loop制御フロー内のコンテナー(例 here )。

13
Ed Harper

SQL実行タスクを使用する必要があります。 SQLStatementセクションで、ストアドプロシージャを実行するコードを追加できます。

パラメーターを渡すには、?を使用します「パラメータマッピング」セクションでパラメータを構文および指定します。

良い例を見つけることができます here

8
Lance Harper