クエリ パラメータを SQL 実行タスクの変数にマップする方法
このトピックでは、SQL 実行タスクでパラメータ化された SQL ステートメントを使用して、SQL ステートメント内の変数とパラメータ間のマッピングを作成する方法を説明します。
異なる種類の接続で使用する SQL 実行タスク、パラメータ マーカー、およびパラメータ名の詳細については、「SSIS SQL 実行タスク」および「SQL 実行タスクにおけるパラメーターとリターン コードの使用」を参照してください。
クエリ パラメータを変数にマップするには
Business Intelligence Development Studio で、処理する Integration Services パッケージを開きます。
ソリューション エクスプローラで、パッケージをダブルクリックして開きます。
[制御フロー] タブをクリックします。
SQL 実行タスクがまだパッケージに含まれていない場合、SQL 実行タスクをパッケージの制御フローに追加します。詳細については、「制御フローのタスクまたはコンテナを追加または削除する方法」を参照してください。
SQL 実行タスクをダブルクリックします。
パラメータ化 SQL コマンドを、次のいずれかの方法で指定します。
直接入力を使用して、SQLStatement プロパティに SQL コマンドを入力します。
直接入力を使用して、[クエリの作成] をクリックし、クエリ ビルダで用意されているグラフィック ツールを使用して、SQL コマンドを作成します。
ファイル接続を使用し、SQL コマンドが含まれるファイルを参照します。
変数を使用し、SQL コマンドが含まれる変数を参照します。
パラメータ化された SQL ステートメントで使用するパラメータ マーカーは、SQL 実行タスクが使用する接続の種類によって異なります。
接続の種類
パラメータ マーカー
ADO
?
ADO.NET および SQLMOBILE
@<parameter name>
ODBC
?
EXCEL および OLE DB
?
[パラメータ マッピング] をクリックします。
パラメータ マッピングを追加するには、[追加] をクリックします。
[パラメータ名] ボックスに名前を入力します。
使用するパラメータ名は、SQL 実行タスクが使用する接続の種類によって異なります。
接続の種類
パラメータ名
ADO
Param1、Param2、...
ADO.NET および SQLMOBILE
@<parameter name>
ODBC
1, 2, 3, ...
EXCEL および OLE DB
0, 1, 2, 3, ...
[変数名] 一覧で、変数を選択します。詳細については、「[変数] ウィンドウを使用してパッケージで変数を追加または削除する方法」を参照してください。
[方向] 一覧で、パラメータが入力、出力、または戻り値のいずれであるかを指定します。
[データ型] 一覧で、パラメータのデータ型を設定します。
重要 パラメータのデータ型は、変数のデータ型と互換性がある必要があります。
SQL ステートメントの各パラメータに対して、手順 8. ~ 11. を繰り返します。
重要 パラメータ マッピングの順序は、SQL ステートメントで使用されるパラメータの順序と同じである必要があります。
[OK] をクリックします。