IDbCommand インターフェイス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
データ ソースへの接続中に実行される SQL ステートメントを表し、リレーショナル データベースにアクセスする .NET データ プロバイダーにより実装されます。
public interface class IDbCommand : IDisposable
public interface IDbCommand : IDisposable
type IDbCommand = interface
interface IDisposable
Public Interface IDbCommand
Implements IDisposable
- 派生
- 実装
例
次の例では、派生クラス、、、SqlConnectionSqlCommandおよび のインスタンスを作成しますSqlDataReader。 この例では、データを読み取り、コンソールに書き込みます。 最後に、この例では を閉じ、 SqlDataReader次に を SqlConnection閉じます。
private static void ReadOrderData(string connectionString)
{
string queryString =
"SELECT OrderID, CustomerID FROM dbo.Orders;";
using (SqlConnection connection = new SqlConnection(
connectionString))
{
SqlCommand command = new SqlCommand(
queryString, connection);
connection.Open();
using(SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
Console.WriteLine(String.Format("{0}, {1}",
reader[0], reader[1]));
}
}
}
}
Public Sub ReadOrderData(ByVal connectionString As String)
Dim queryString As String = _
"SELECT OrderID, CustomerID FROM dbo.Orders;"
Using connection As New SqlConnection(connectionString)
Dim command As New SqlCommand(queryString, connection)
connection.Open()
Dim reader As SqlDataReader = command.ExecuteReader()
Try
While reader.Read()
Console.WriteLine(String.Format("{0}, {1}", _
reader(0), reader(1)))
End While
Finally
' Always call Close when done reading.
reader.Close()
End Try
End Using
End Sub
注釈
IDbCommandインターフェイスを使用すると、継承クラスで Command クラスを実装できます。これは、データ ソースで実行される SQL ステートメントを表します。 Command クラスの詳細については、「コマンド の実行」を参照してください。
アプリケーションはインターフェイスの IDbCommand インスタンスを直接作成するのではなく、 インターフェイスを実装する クラスのインスタンスを IDbCommand 作成します。
を実装 IDbCommand するクラスは、そのすべてのメンバーを実装し、通常はプロバイダー固有の機能を追加するために追加のメンバーを定義する必要があります。 たとえば、IDbCommand インターフェイスは、ExecuteNonQuery メソッドを定義します。 さらに、 クラスはこのメソッドを SqlCommand 継承し、 メソッドも定義します ExecuteXmlReader 。
注意 (実装者)
.NET Framework データ プロバイダー間の一貫性を高めるために、継承クラスに という形式PrvClassname
で名前を付けます。ここでPrv
、 は、特定の.NET Framework データ プロバイダー名前空間内のすべてのクラスに渡される均一なプレフィックスです。 たとえば、 Sql
は 名前空間の System.Data.SqlClient
クラスのSqlCommandプレフィックスです。
インターフェイスから IDbCommand 継承する場合は、次のコンストラクターを実装する必要があります。
アイテム | 説明 |
---|---|
PrvCommand() | PrvCommand クラスの新しいインスタンスを初期化します。 |
PrvCommand(string cmdText) | クエリのテキストを使用して、PrvCommand クラスの新しいインスタンスを初期化します。 |
PrvCommand(string cmdText, PrvConnection connection) | クエリのテキストと PrvConnection を使用して、PrvCommand クラスの新しいインスタンスを初期化します。 |
PrvCommand(string cmdText, PrvConnection connection, PrvTransaction transaction) | PrvConnection および PrvTransaction のクエリのテキストを使用して、PrvCommand クラスの新しいインスタンスを初期化します。 |
プロパティ
CommandText |
データ ソースに対して実行するテキスト コマンドを取得または設定します。 |
CommandTimeout |
コマンド実行の試行を終了してエラーを生成するまでの待機時間 (秒単位) を取得または設定します。 |
CommandType |
CommandText プロパティをどのように解釈するかを表示または指定します。 |
Connection |
この IDbCommand のインスタンスで使用する IDbConnection を取得または設定します。 |
Parameters |
IDataParameterCollection を取得します。 |
Transaction |
.NET データ プロバイダーの |
UpdatedRowSource |
DbDataAdapter の Update(DataSet) メソッドで使用するときに、コマンドの結果を DataRow に適用する方法を取得または設定します。 |
メソッド
Cancel() |
IDbCommand の実行のキャンセルを試行します。 |
CreateParameter() |
IDbDataParameter オブジェクトの新しいインスタンスを作成します。 |
Dispose() |
アンマネージ リソースの解放またはリセットに関連付けられているアプリケーション定義のタスクを実行します。 (継承元 IDisposable) |
ExecuteNonQuery() |
.NET データ プロバイダーの |
ExecuteReader() |
Connection に対して CommandText を実行し、IDataReader をビルドします。 |
ExecuteReader(CommandBehavior) |
Connection に対して CommandText を実行し、CommandBehavior の値のいずれかを使用して IDataReader をビルドします。 |
ExecuteScalar() |
クエリを実行し、そのクエリが返す結果セットの最初の行にある最初の列を返します。 追加の列または行は無視されます。 |
Prepare() |
コマンドの準備済み (またはコンパイル済み) のバージョンをデータ ソースに作成します。 |
適用対象
こちらもご覧ください
.NET