IDataParameter インターフェイス
Command オブジェクトに対するパラメータと、オプションとして DataSet 列へのマップを表します。データ ソースにアクセスする .NET Framework データ プロバイダによって実装されます。
この型のすべてのメンバの一覧については、IDataParameter メンバ を参照してください。
Public Interface IDataParameter
[C#]
public interface IDataParameter
[C++]
public __gc __interface IDataParameter
[JScript]
public interface IDataParameter
IDataParameter を実装するクラス
クラス | 説明 |
---|---|
OdbcParameter | OdbcCommand のパラメータと、必要に応じて DataColumn へのマップを表します。このクラスは継承できません。 |
OleDbParameter | OleDbCommand のパラメータと、オプションとして DataSet 列に対するマップを表します。このクラスは継承できません。 |
OracleParameter | OracleCommand のパラメータと、オプションとして DataColumn に対するマップを表します。このクラスは継承できません。 |
SqlCeParameter | SqlCeCommand のパラメータと、オプションで DataSet 列に対するマップを表します。このクラスは継承できません。 |
SqlParameter | SqlCommand のパラメータと、オプションで DataSet 列に対するマップを表します。このクラスは継承できません。 |
解説
IDataParameter インターフェイスによって、継承クラスは Command オブジェクトに対するパラメータを表す Parameter クラスを実装できます。Parameter クラスの詳細については、「 コマンドによるストアド プロシージャの使用 」を参照してください。.NET Framework データ プロバイダの実装の詳細については、「 .NET Framework データ プロバイダの実装 」を参照してください。
アプリケーションでは IDataParameter インターフェイスのインスタンスは直接作成されず、 IDataParameter を継承するクラスのインスタンスが作成されます。
IDataParameter を継承するクラスは、継承されたメンバを実装する必要があり、通常、プロバイダ固有の機能を追加する追加メンバを定義する必要があります。たとえば、 IDataParameter インターフェイスが DbType プロパティを定義します。次に、 OleDbParameter クラスがこのプロパティを継承し、 OleDbType プロパティを定義します。
実装時の注意: .NET Framework データ プロバイダ間に一貫性を持たせるために、継承クラスには Prv Parameter という形式の名前を付けてください。 Prv は各 .NET Framework データ プロバイダの名前空間内のすべてのクラスに付けられるプリフィックスです。たとえば、 Sql は System.Data.SqlClient 名前空間内の SqlCommand クラスのプリフィックスです。
IDataParameter インターフェイスから継承する場合は、次のコンストラクタを実装する必要があります。
項目 | 説明 |
---|---|
PrvParameter() | Parameter クラスの新しいインスタンスを初期化します。 |
PrvParameter(string name, PrvDbType dataType) | パラメータ名とデータ型を指定して、Parameter クラスの新しいインスタンスを初期化します。 |
PrvParameter(string name, object value) | パラメータ名と Parameter の値であるオブジェクトを指定して、Parameter クラスの新しいインスタンスを初期化します。 |
PrvParameter(string name, PrvDbType dataType, int size) | パラメータ名、データ型、および幅を指定して、Parameter クラスの新しいインスタンスを初期化します。 |
PrvParameter(string name, PrvDbType dataType, int size, string srcColumn) | パラメータ名、データ型、幅、およびソース列名を指定して、DbParameter クラスの新しいインスタンスを初期化します。 |
PrvParameter(string parameterName, PrvDbType dbType, int size, ParameterDirection direction, Boolean isNullable, Byte precision, Byte scale, string srcColumn, DataRowVersion srcVersion, object value) | パラメータ名、データ型、幅、ソース列名、パラメータの方向、数値の精度、およびその他のプロパティを指定して、 OleDbParameter クラスの新しいインスタンスを初期化します。 |
使用例
[Visual Basic, C#, C++] SqlDataAdapter 内の SqlParameterCollection コレクションを使用して、派生クラス SqlParameter の複数のインスタンスを作成する例を次に示します。これらのパラメータは、データ ソースからのデータの選択と、 DataSet でのデータの配置に使用されます。この例は、 DataSet および SqlDataAdapter が、正しいスキーマ、コマンド、および接続で既に作成されていることを前提にしています。
Public Sub AddSqlParameters()
' ...
' create myDataSet and myDataAdapter
' ...
myDataAdapter.SelectCommand.Parameters.Add("@CategoryName", SqlDbType.VarChar, 80).Value = "toasters"
myDataAdapter.SelectCommand.Parameters.Add("@SerialNum", SqlDbType.Int).Value = 239
myDataAdapter.Fill(myDataSet)
End Sub 'AddSqlParameters
[C#]
public void AddSqlParameters()
{
// ...
// create myDataSet and myDataAdapter
// ...
myDataAdapter.SelectCommand.Parameters.Add("@CategoryName", SqlDbType.VarChar, 80).Value = "toasters";
myDataAdapter.SelectCommand.Parameters.Add("@SerialNum", SqlDbType.Int).Value = 239;
myDataAdapter.Fill(myDataSet);
}
[C++]
public:
void AddSqlParameters()
{
// ...
// create myDataSet and myDataAdapter
// ...
myDataAdapter->SelectCommand->Parameters->Add(S"@CategoryName", SqlDbType::VarChar, 80)->Value = S"toasters";
myDataAdapter->SelectCommand->Parameters->Add(S"@SerialNum", SqlDbType::Int)->Value = __box(239);
myDataAdapter->Fill(myDataSet);
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
名前空間: System.Data
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET
アセンブリ: System.Data (System.Data.dll 内)