パラメータ コレクション エディタ

更新 : 2007 年 11 月

TableAdapter およびデータ アダプタの SQL ステートメントまたはストアド プロシージャに関連付けられているパラメータ (OleDbParameterSqlParameterOdbcParameter、および OracleParameter の各オブジェクト) を作成および構成できます。

パラメータ コレクションの編集

[プロパティ] ウィンドウを使ってデータセット デザイナの TableAdapter またはフォームまたはコンポーネントのデータ アダプタを構成しているときに、パラメータ コレクション エディタが表示されます。

データセット デザイナ画面で TableAdapter を選択し、[プロパティ] ウィンドウの [パラメータ] プロパティを選択して パラメータ コレクション エディタを開きます。

  1. SelectCommand、UpdateCommand、InsertCommand、DeleteCommand の各プロパティに対するノードを開きます。

  2. [パラメータ] プロパティを編集して パラメータ コレクション エディタを開きます。

5xh44k5s.alert_note(ja-jp,VS.90).gifメモ :

TableAdapter 構成ウィザードまたはデータ アダプタ構成ウィザードなどのデータ デザイン ツールを使ってアダプタを構成した場合、アダプタのパラメータは自動的に構成されます。

パラメータ名

これらのコマンドのステートメントまたはストアド プロシージャは、パラメータ プレースホルダで定義できます。

OleDbDataAdapter オブジェクトを使用している場合、ステートメントはプレースホルダとして疑問符を使用し、次のようになります。

Select * From Customers Where City = ?

SqlDataAdapter オブジェクトを使用している場合、名前付きパラメータを使用するステートメントは次のようになります。

Select * From Customers Where City = @City

OracleDataAdapter オブジェクトを使用している場合、Oracle の名前付きパラメータを使用するステートメントは次のようになります。

SELECT * FROM Customers WHERE CustomerID = :pCustomerID
5xh44k5s.alert_note(ja-jp,VS.90).gifメモ :

Oracle では、SQL ステートメントやストアド プロシージャで名前付きパラメータを使用する場合、パラメータ名の前にコロン (:) を付ける必要があります。ただし、コード内の他の場所にある名前付きパラメータを参照する場合 (Add メソッドを呼び出す場合など) には、名前付きパラメータの前にコロン (:) を付けないでください。データ プロバイダが自動的にコロンを追加します。

パラメータの追加

コマンドの Parameters コレクション (Parameters など) には、値をステートメントまたはストアド プロシージャに渡すために実行時に使用されるパラメータ オブジェクトのリストが含まれます。したがって、パラメータ値ごとに、コマンドに渡す必要のあるパラメータ オブジェクトがあります。

エディタは 2 つのペインに分割されています。左側のペインではパラメータの追加と削除を行い、右側のペインでは各パラメータに対する次のプロパティを設定します。

  • ParameterName プロパティ。このプロパティを使うと、コード内でパラメータを参照できます。

    5xh44k5s.alert_note(ja-jp,VS.90).gifメモ :

    SqlDataAdapter クラスでは名前付きパラメータが必要なので、SqlParameter オブジェクトでは名前の前に常に "@" を付ける必要があります。

  • SourceColumn プロパティ。パラメータの値の元になっているデータ レコード内の場所を示しています。この値は更新するときに使用されます。データアダプタは、特定の列の値を更新コマンドに渡します。

  • SourceVersion プロパティ。SourceColumn プロパティと共に使用されます。レコードがデータセット内で変更されている場合は、元の値 (データ ソースから読み取ったときの値) と現在の値 (変更後の値) のように、レコードの複数のコピーを使用できます。パラメータとして渡す列の値を指定するときは、2 つの値のうちどちらを渡すかを選択します。普通、WHERE 句のパラメータでは元の値を使用してデータベース内のレコードを示し、SET 句または VALUES 句では現在の値を使用します。

  • Value プロパティ。パラメータとして渡される明示的なリテラル値です。このプロパティを設定すると、SourceColumn プロパティはオーバーライドされます。この 2 つのプロパティは相互に排他的です。

パラメータの詳細については、「データ アダプタ コマンドのパラメータ」を参照してください。

ユーザー インターフェイス要素の一覧

  • [追加]
    コレクションに新しいパラメータを作成します。既定では、Parametern という名前がパラメータに設定されます。n は、連続する番号です。プロパティ グリッドで ParameterName プロパティを設定することで、パラメータの名前を変更できます。

    5xh44k5s.alert_note(ja-jp,VS.90).gifメモ :

    OleDbParameter コレクション エディタは、コマンドに対して正しい数のパラメータが作成されていること、またはパラメータが正しい型であることはチェックしません。

    パラメータは、その位置に基づいて、ステートメントまたはコマンドのパラメータのプレースホルダと対応付けられます。したがって、コレクション内でパラメータが正しい順序になっていることを確認してください。

  • [削除]
    選択しているパラメータをコレクションから削除します。

参照

概念

データの表示の概要

参照

SqlParameter

その他の技術情報

TableAdapter

Visual Studio でのデータへの接続

アプリケーションでデータを受け取る準備

アプリケーションへのデータのフェッチ

Windows アプリケーションのフォームでのデータの表示

アプリケーションでのデータ編集

データの検証

データの保存