Freigeben über


IDbCommand-Schnittstelle

Stellt eine SQL-Anweisung dar, die während einer Verbindung mit einer Datenquelle ausgeführt wird. Die Implementierung erfolgt durch .NET Framework-Datenprovider, die auf relationale Datenbanken zugreifen.

Namespace: System.Data
Assembly: System.Data (in system.data.dll)

Syntax

'Declaration
Public Interface IDbCommand
    Inherits IDisposable
'Usage
Dim instance As IDbCommand
public interface IDbCommand : IDisposable
public interface class IDbCommand : IDisposable
public interface IDbCommand extends IDisposable
public interface IDbCommand extends IDisposable

Hinweise

Die IDbCommand-Schnittstelle ermöglicht einer erbenden Klasse das Implementieren einer Command-Klasse, die eine für eine Datenquelle ausgeführte SQL-Anweisung darstellt. Weitere Informationen über Command-Klassen finden Sie unter Ausführen eines Befehls. Weitere Informationen über das Implementieren von .NET Framework-Datenanbietern finden Sie unter Implementing a .NET Framework Data Provider.

Eine Anwendung erstellt eine Instanz der IDbCommand-Schnittstelle nicht direkt, sondern erstellt eine Instanz einer Klasse, die IDbCommand erbt.

Klassen, die IDbCommand erben, müssen alle geerbten Member implementieren. Sie definieren i. d. R. zusätzliche Member, um anbieterspezifische Funktionen hinzuzufügen. Die IDbCommand-Schnittstelle definiert z. B. die ExecuteNonQuery-Methode. Die SqlCommand-Klasse erbt wiederum diese Methode und definiert außerdem die ExecuteXmlReader-Methode.

Hinweise für Implementierer Benennen Sie zur Förderung der Konsistenz unter den .NET Framework-Datenprovidern die erbende Klasse in der Form PrvClassname, wobei Prv das einheitliche Präfix für alle Klassen in einem bestimmten Namespace von .NET Framework-Datenprovidern ist. Sql ist z. B. das Präfix der SqlCommand-Klasse im System.Data.SqlClient-Namespace. Wenn Sie die IDbCommand-Schnittstelle vererben, müssen Sie die folgenden Konstruktoren implementieren:

Element

Beschreibung

PrvCommand()

Initialisiert eine neue Instanz der PrvCommand-Klasse.

PrvCommand(string cmdText)

Initialisiert eine neue Instanz der PrvCommand-Klasse mit dem Text der Abfrage.

PrvCommand(string cmdText, PrvConnection connection)

Initialisiert eine neue Instanz der PrvCommand-Klasse mit dem Text der Abfrage und einer PrvConnection.

PrvCommand(string cmdText, PrvConnection connection, PrvTransaction transaction)

Initialisiert eine neue Instanz der PrvCommand-Klasse mit dem Text der Abfrage, einer PrvConnection und der PrvTransaction.

Beispiel

Im folgenden Beispiel werden Instanzen der abgeleiteten Klassen SqlConnection, SqlCommand und SqlDataReader erstellt. Im Beispiel werden alle Daten gelesen und in der Konsole ausgegeben. Abschließend wird im Beispiel die SqlDataReader-Klasse und danach die SqlConnection-Klasse geschlossen.

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
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();
        SqlDataReader reader = command.ExecuteReader();
        try
        {
            while (reader.Read())
            {
                Console.WriteLine(String.Format("{0}, {1}",
                    reader[0], reader[1]));
            }
        }
        finally
        {
            // Always call Close when done reading.
            reader.Close();
        }
    }
}

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

IDbCommand-Member
System.Data-Namespace
DbDataAdapter
IDbConnection
OleDbCommand
SqlCommand