1

私はストアドプロシージャ(sp_selectClient)に、各繰り返しでいくつかの挿入操作を実行するカーソルを持っています。 spの最後のステートメントでは、テーブルから結果を選択しました。ssis control flow sqlとデータフローsqlコマンドを実行する

今、私はssisパッケージを作成しています。私はこれで新しくなっています。私はコントロールフローでデータフロータスクを追加して、データフロー内に最も簡単な方法を見つけました。source(OLEDB)を追加して、SQLコマンド'EXEC sp_selectClient'を設定しました。ストアドプロシージャはパラメータを受け入れません。そしてそれをdestination(flat file)にマップしました。私の質問はExecute SQL Taskでもこれを行うことができます。はいの場合、これを行う利点と欠点は何ですか?

答えて

0

でデータを処理しますストアドプロシージャが結果セットを作成する場合は、Execute SQLタスクを使用して、結果セットをObjectの変数に格納してから、Script Task

これらはあなたがScript Task内部にその行を超える変数とループ内ResultSetsを保存するのに役立ちますusefulsのリンクです:あなたの場合

ストアドプロシージャは結果セットを生成しません(SelectコマンドExecute SQL Taskこのインスタンスで一括挿入を行いながら、行ごとに文を、

OLE DB Command実行が挿入SQLタスクを実行し、更新または削除を使用することをお勧めします。つまり、パッケージを通過するすべての単一の行には、OLE DB Commandになるとinsert文が実行されます。

参考文献:

関連する問題