このトピックでは、SQL 実行タスクで結果セットと変数の間のマッピングを作成する方法について説明します。 結果セットを変数にマップすることで、結果セットをパッケージ内の他の要素で使用できるようになります。 たとえば、スクリプト タスクのスクリプトでは、変数を読み取ってから、結果セットからの値を使用できます。XML ソースでは、変数に格納された結果セットを利用できます。 親パッケージで結果セットが生成される場合、パッケージ実行タスクから呼び出された子パッケージでその結果セットを使用できるようにするには、結果セットを親パッケージ内の変数にマップしてから、子パッケージ内で親パッケージの変数構成を作成して、親変数の値を格納します。
さまざまな種類の結果セットと、結果セットにマップできる変数データ型の説明については、「 SQL 実行タスクの結果セット」を参照してください。
結果セットを変数にマップするには
SQL Server Data Tools (SSDT)で、目的のパッケージが含まれている Integration Services プロジェクトを開きます。
ソリューション エクスプローラーで、パッケージをダブルクリックして開きます。
[制御フロー] タブをクリックします。
SQL 実行タスクがまだパッケージに含まれていない場合、SQL 実行タスクをパッケージの制御フローに追加します。 詳細については、「制御フローでのタスクまたはコンテナーの追加または削除」を参照してください。
.SQL 実行タスクをダブルクリックします。
[SQL 実行タスク エディター] ダイアログ ボックスの [全般] ページで、 [単一行] 、 [完全な結果セット] 、 [XML] のいずれかの種類の結果セットを選択します。
さまざまな結果セットの説明については、「SQL 実行タスクの結果セット」を参照してください。
[結果セット] をクリックします。
結果セット マッピングを追加するには、 [追加] をクリックします。
[変数名] の一覧で、変数を選択するか、新しい変数を作成します。 詳細については、「 パッケージ内のユーザー定義変数のスコープの追加、削除、変更」を参照してください。
さまざまな結果セットにマップできる変数データ型の説明については、「 SQL 実行タスクの結果セット」を参照してください。
変数を 1 つの列にマップし、複数の変数を複数の列にマップする方法については、「SQL 実行タスクの結果セットを使用した変数の設定」セクションを参照してください。
[結果名] の一覧で、必要に応じて結果セットの名前を変更します。
一般に、列名を結果セット名として使用することも、列リストでの列の序数位置を結果セットとして使用することもできます。 列名を結果セットの名前として使用できるかどうかは、タスクの構成で指定されているプロバイダーによって異なります。 すべてのプロバイダーで列名が使用できるわけではありません。
OK をクリックします。
こちらもご覧ください
SQL 実行タスク
SQL 実行タスクの結果セット
パッケージ実行タスク
[パッケージ構成]
パッケージ構成を作成する
子パッケージでの変数およびパラメーターの値の使用
Integration Services (SSIS) の変数