IDbCommand Gränssnitt
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar en SQL-instruktion som körs när den är ansluten till en datakälla och implementeras av .NET dataprovidrar som har åtkomst till relationsdatabaser.
public interface class IDbCommand : IDisposable
public interface IDbCommand : IDisposable
type IDbCommand = interface
interface IDisposable
Public Interface IDbCommand
Implements IDisposable
- Härledda
- Implementeringar
Exempel
I följande exempel skapas instanser av de härledda klasserna , SqlConnection, SqlCommandoch SqlDataReader. Exemplet läser igenom data och skriver dem till konsolen. Slutligen stänger SqlDataReaderexemplet , och sedan 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
Kommentarer
Gränssnittet IDbCommand gör det möjligt för en ärvande klass att implementera en kommandoklass, som representerar en SQL-instruktion som körs i en datakälla. Mer information om kommandoklasser finns i Köra ett kommando.
Ett program skapar inte en instans av IDbCommand gränssnittet direkt, men skapar en instans av en klass som implementerar IDbCommand gränssnittet.
Klasser som implementerar IDbCommand måste implementera alla sina medlemmar och vanligtvis definiera ytterligare medlemmar för att lägga till providerspecifika funktioner. Gränssnittet definierar IDbCommand till exempel ExecuteNonQuery metoden. Klassen ärver i sin tur den SqlCommand här metoden och definierar ExecuteXmlReader även metoden.
Anteckningar till implementerare
Om du vill främja konsekvens mellan .NET Framework-dataprovidrar namnger du ärvningsklassen i formuläret PrvClassname där Prv är det enhetliga prefix som ges till alla klasser i ett specifikt .NET Framework-dataprovidernamnområde. Är till exempel Sql prefixet för SqlCommand klassen i System.Data.SqlClient namnområdet.
När du ärver från IDbCommand gränssnittet bör du implementera följande konstruktorer:
| Artikel | Beskrivning |
|---|---|
| PrvCommand() | Initierar en ny instans av klassen PrvCommand. |
| PrvCommand(string cmdText) | Initierar en ny instans av klassen PrvCommand med texten i frågan. |
| PrvCommand(string cmdText, PrvConnection-anslutning) | Initierar en ny instans av klassen PrvCommand med texten i frågan och en PrvConnection. |
| PrvCommand(string cmdText, PrvConnection-anslutning, PrvTransaction-transaktion) | Initierar en ny instans av klassen PrvCommand med texten i frågan, en PrvConnection och PrvTransaction. |
Egenskaper
| Name | Description |
|---|---|
| CommandText |
Hämtar eller anger att textkommandot ska köras mot datakällan. |
| CommandTimeout |
Hämtar eller anger väntetiden (i sekunder) innan du avslutar försöket att köra ett kommando och genererar ett fel. |
| CommandType |
Anger eller anger hur egenskapen CommandText tolkas. |
| Connection |
Hämtar eller anger den IDbConnection som används av den här instansen IDbCommandav . |
| Parameters |
IDataParameterCollectionHämtar . |
| Transaction |
Hämtar eller anger den transaktion inom vilken |
| UpdatedRowSource |
Hämtar eller anger hur kommandoresultat tillämpas på DataRow när de används av metoden för Update(DataSet) en DbDataAdapter. |
Metoder
| Name | Description |
|---|---|
| Cancel() |
Försök att avbryta körningen av en IDbCommand. |
| CreateParameter() |
Skapar en ny instans av ett IDbDataParameter objekt. |
| Dispose() |
Utför programdefinierade uppgifter som är associerade med att frigöra, frigöra eller återställa ohanterade resurser. (Ärvd från IDisposable) |
| ExecuteNonQuery() |
Kör en SQL-instruktion mot |
| ExecuteReader() |
CommandText Kör mot Connection och skapar en IDataReader. |
| ExecuteReader(CommandBehavior) |
CommandText Kör mot Connection, och skapar ett IDataReader med något av CommandBehavior värdena. |
| ExecuteScalar() |
Kör frågan och returnerar den första kolumnen på den första raden i resultatuppsättningen som returneras av frågan. Extra kolumner eller rader ignoreras. |
| Prepare() |
Skapar en förberedd (eller kompilerad) version av kommandot på datakällan. |