IDbCommand Schnittstelle
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt eine SQL-Anweisung dar, die während der Verbindung mit einer Datenquelle ausgeführt wird und von .NET Datenanbietern implementiert wird, die auf relationale Datenbanken zugreifen.
public interface class IDbCommand : IDisposable
public interface IDbCommand : IDisposable
type IDbCommand = interface
interface IDisposable
Public Interface IDbCommand
Implements IDisposable
- Abgeleitet
- Implementiert
Beispiele
Im folgenden Beispiel werden Instanzen der abgeleiteten Klassen, SqlConnection, , SqlCommandund SqlDataReader. Im Beispiel werden die Daten gelesen und in die Konsole geschrieben. Schließlich schließt das Beispiel den SqlDataReader, dann die 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
Hinweise
Die IDbCommand Schnittstelle ermöglicht es einer geerbten Klasse, eine Command-Klasse zu implementieren, die eine SQL-Anweisung darstellt, die an einer Datenquelle ausgeführt wird. Weitere Informationen zu Befehlsklassen finden Sie unter Ausführen eines Befehls.
Eine Anwendung erstellt keine Instanz der IDbCommand Schnittstelle direkt, erstellt aber eine Instanz einer Klasse, die die IDbCommand Schnittstelle implementiert.
Klassen, die implementieren IDbCommand , müssen alle member implementieren und in der Regel zusätzliche Member definieren, um anbieterspezifische Funktionen hinzuzufügen. Beispielsweise definiert die IDbCommand Schnittstelle die ExecuteNonQuery Methode. Wiederum erbt die SqlCommand Klasse diese Methode und definiert auch die ExecuteXmlReader Methode.
Hinweise für Ausführende
Um die Konsistenz zwischen .NET Framework-Datenanbietern zu fördern, benennen Sie die erbende Klasse in dem Formular PrvClassname , in dem Prv das einheitliche Präfix für alle Klassen in einem bestimmten .NET Framework-Datenanbieternamespace angegeben ist. Ist beispielsweise Sql das Präfix der SqlCommand Klasse im System.Data.SqlClient Namespace.
Wenn Sie von der IDbCommand Schnittstelle erben, sollten 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. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| CommandText |
Ruft den Textbefehl ab, der für die Datenquelle ausgeführt werden soll, oder legt diesen fest. |
| CommandTimeout |
Ruft die Wartezeit (in Sekunden) ab, bevor der Versuch, einen Befehl auszuführen und einen Fehler zu generieren, beendet wird, oder legt diese fest. |
| CommandType |
Gibt an, wie die CommandText Eigenschaft interpretiert wird. |
| Connection |
Dient zum Abrufen oder Festlegen der IDbConnection von dieser Instanz der IDbCommand. |
| Parameters |
Ruft IDataParameterCollection ab. |
| Transaction |
Ruft die Transaktion ab, in der das |
| UpdatedRowSource |
Ruft ab oder legt fest, wie Befehlsergebnisse auf die DataRow von der Update(DataSet) Methode einer .DbDataAdapter |
Methoden
| Name | Beschreibung |
|---|---|
| Cancel() |
Versucht, die Ausführung einer .IDbCommand |
| CreateParameter() |
Erstellt eine neue Instanz eines IDbDataParameter Objekts. |
| Dispose() |
Führt anwendungsdefinierte Aufgaben aus, die mit dem Freigeben, Freigeben oder Zurücksetzen nicht verwalteter Ressourcen verknüpft sind. (Geerbt von IDisposable) |
| ExecuteNonQuery() |
Führt eine SQL-Anweisung für das objekt |
| ExecuteReader() |
Führt die CommandText gegen die Connection und erstellt eine IDataReader. |
| ExecuteReader(CommandBehavior) |
Führt den CommandText Gegenwert Connectionaus und erstellt einen IDataReader mit einem der CommandBehavior Werte. |
| ExecuteScalar() |
Führt die Abfrage aus und gibt die erste Spalte der ersten Zeile im Resultset zurück, das von der Abfrage zurückgegeben wird. Zusätzliche Spalten oder Zeilen werden ignoriert. |
| Prepare() |
Erstellt eine vorbereitete (oder kompilierte) Version des Befehls in der Datenquelle. |