パラメータ コレクション エディタ
更新 : 2007 年 11 月
TableAdapter およびデータ アダプタの SQL ステートメントまたはストアド プロシージャに関連付けられているパラメータ (OleDbParameter、SqlParameter、OdbcParameter、および OracleParameter の各オブジェクト) を作成および構成できます。
パラメータ コレクションの編集
[プロパティ] ウィンドウを使ってデータセット デザイナの TableAdapter またはフォームまたはコンポーネントのデータ アダプタを構成しているときに、パラメータ コレクション エディタが表示されます。
データセット デザイナ画面で TableAdapter を選択し、[プロパティ] ウィンドウの [パラメータ] プロパティを選択して パラメータ コレクション エディタを開きます。
SelectCommand、UpdateCommand、InsertCommand、DeleteCommand の各プロパティに対するノードを開きます。
[パラメータ] プロパティを編集して パラメータ コレクション エディタを開きます。
メモ : |
---|
TableAdapter 構成ウィザードまたはデータ アダプタ構成ウィザードなどのデータ デザイン ツールを使ってアダプタを構成した場合、アダプタのパラメータは自動的に構成されます。 |
パラメータ名
これらのコマンドのステートメントまたはストアド プロシージャは、パラメータ プレースホルダで定義できます。
OleDbDataAdapter オブジェクトを使用している場合、ステートメントはプレースホルダとして疑問符を使用し、次のようになります。
Select * From Customers Where City = ?
SqlDataAdapter オブジェクトを使用している場合、名前付きパラメータを使用するステートメントは次のようになります。
Select * From Customers Where City = @City
OracleDataAdapter オブジェクトを使用している場合、Oracle の名前付きパラメータを使用するステートメントは次のようになります。
SELECT * FROM Customers WHERE CustomerID = :pCustomerID
メモ : |
---|
Oracle では、SQL ステートメントやストアド プロシージャで名前付きパラメータを使用する場合、パラメータ名の前にコロン (:) を付ける必要があります。ただし、コード内の他の場所にある名前付きパラメータを参照する場合 (Add メソッドを呼び出す場合など) には、名前付きパラメータの前にコロン (:) を付けないでください。データ プロバイダが自動的にコロンを追加します。 |
パラメータの追加
コマンドの Parameters コレクション (Parameters など) には、値をステートメントまたはストアド プロシージャに渡すために実行時に使用されるパラメータ オブジェクトのリストが含まれます。したがって、パラメータ値ごとに、コマンドに渡す必要のあるパラメータ オブジェクトがあります。
エディタは 2 つのペインに分割されています。左側のペインではパラメータの追加と削除を行い、右側のペインでは各パラメータに対する次のプロパティを設定します。
ParameterName プロパティ。このプロパティを使うと、コード内でパラメータを参照できます。
メモ : SqlDataAdapter クラスでは名前付きパラメータが必要なので、SqlParameter オブジェクトでは名前の前に常に "@" を付ける必要があります。
SourceColumn プロパティ。パラメータの値の元になっているデータ レコード内の場所を示しています。この値は更新するときに使用されます。データアダプタは、特定の列の値を更新コマンドに渡します。
SourceVersion プロパティ。SourceColumn プロパティと共に使用されます。レコードがデータセット内で変更されている場合は、元の値 (データ ソースから読み取ったときの値) と現在の値 (変更後の値) のように、レコードの複数のコピーを使用できます。パラメータとして渡す列の値を指定するときは、2 つの値のうちどちらを渡すかを選択します。普通、WHERE 句のパラメータでは元の値を使用してデータベース内のレコードを示し、SET 句または VALUES 句では現在の値を使用します。
Value プロパティ。パラメータとして渡される明示的なリテラル値です。このプロパティを設定すると、SourceColumn プロパティはオーバーライドされます。この 2 つのプロパティは相互に排他的です。
パラメータの詳細については、「データ アダプタ コマンドのパラメータ」を参照してください。
ユーザー インターフェイス要素の一覧
[追加]
コレクションに新しいパラメータを作成します。既定では、Parametern という名前がパラメータに設定されます。n は、連続する番号です。プロパティ グリッドで ParameterName プロパティを設定することで、パラメータの名前を変更できます。メモ : OleDbParameter コレクション エディタは、コマンドに対して正しい数のパラメータが作成されていること、またはパラメータが正しい型であることはチェックしません。
パラメータは、その位置に基づいて、ステートメントまたはコマンドのパラメータのプレースホルダと対応付けられます。したがって、コレクション内でパラメータが正しい順序になっていることを確認してください。
[削除]
選択しているパラメータをコレクションから削除します。