IDbCommand Interfész
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Olyan SQL-utasítást jelöl, amelyet egy adatforráshoz való csatlakozáskor hajtanak végre, és .NET relációs adatbázisokhoz hozzáférő adatszolgáltatók implementálják.
public interface class IDbCommand : IDisposable
public interface IDbCommand : IDisposable
type IDbCommand = interface
interface IDisposable
Public Interface IDbCommand
Implements IDisposable
- Származtatott
- Megvalósítás
Példák
Az alábbi példa a származtatott osztályok példányait hozza létre, SqlConnectionSqlCommandés SqlDataReader. A példa végigolvassa az adatokat, és beírja a konzolra. Végül a példa bezárja a SqlDataReader, majd a 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
Megjegyzések
Az IDbCommand interfész lehetővé teszi, hogy egy öröklő osztály implementáljon egy Command osztályt, amely egy adatforráson végrehajtott SQL-utasítást jelöl. További információ a parancsosztályokról: Parancs végrehajtása.
Az alkalmazás nem hozza létre közvetlenül a IDbCommand felület egy példányát, hanem létrehoz egy osztály egy példányát, amely megvalósítja a IDbCommand felületet.
A megvalósító IDbCommand osztályoknak minden tagját implementálniuk kell, és általában további tagokat kell meghatározniuk a szolgáltatóspecifikus funkciók hozzáadásához. Például a IDbCommand felület határozza meg a metódust ExecuteNonQuery . Az osztály viszont örökli ezt a SqlCommand metódust, és meghatározza a metódust ExecuteXmlReader is.
Megjegyzések az implementálókhoz
A .NET keretrendszer adatszolgáltatói közötti konzisztencia előmozdításához nevezze el az öröklő osztályt PrvClassname formában, ahol Prv egy adott .NET keretrendszer adatszolgáltatójának névterében lévő összes osztály egységes előtagja. Például Sql az osztály előtagja SqlCommand a System.Data.SqlClient névtérben.
Ha a IDbCommand felületről örököl, a következő konstruktorokat kell implementálnia:
| Cikk | Leírás |
|---|---|
| PrvCommand() | Inicializálja a PrvCommand osztály új példányát. |
| PrvCommand(string cmdText) | Inicializálja a PrvCommand osztály új példányát a lekérdezés szövegével. |
| PrvCommand(string cmdText, PrvConnection connection) | Inicializálja a PrvCommand osztály új példányát a lekérdezés szövegével és egy PrvConnectionnal. |
| PrvCommand(string cmdText, PrvConnection connection, PrvTransaction transaction) | Inicializálja a PrvCommand osztály új példányát a lekérdezés, a PrvConnection és a PrvTransaction szövegével. |
Tulajdonságok
| Name | Description |
|---|---|
| CommandText |
Lekéri vagy beállítja a szöveges parancs futtatását az adatforráson. |
| CommandTimeout |
Lekéri vagy beállítja a várakozási időt (másodpercben), mielőtt befejezi a parancs végrehajtására tett kísérletet, és hibát okozna. |
| CommandType |
A tulajdonság értelmezésének CommandText módját jelzi vagy határozza meg. |
| Connection |
Lekéri vagy beállítja a IDbConnection példány által IDbCommandhasznált . |
| Parameters |
Lekéri a IDataParameterCollection. |
| Transaction |
Lekéri vagy beállítja azt a tranzakciót, amelyen belül egy .NET adatszolgáltató |
| UpdatedRowSource |
Lekérdezi vagy beállítja, hogy a parancseredmények hogyan legyenek alkalmazva a DataRowUpdate(DataSet) metódus által használt parancsokra DbDataAdapter. |
Metódusok
| Name | Description |
|---|---|
| Cancel() |
Megkísérli megszakítani egy IDbCommand. |
| CreateParameter() |
Új objektumpéldányt IDbDataParameter hoz létre. |
| Dispose() |
Végrehajtja a nem felügyelt erőforrások felszabadításával, felszabadításával vagy alaphelyzetbe állításával kapcsolatos alkalmazásalapú feladatokat. (Öröklődés forrása IDisposable) |
| ExecuteNonQuery() |
Sql-utasítást hajt végre egy .NET adatszolgáltató |
| ExecuteReader() |
Végrehajtja az ellen, CommandTextConnection és létrehoz egy IDataReader. |
| ExecuteReader(CommandBehavior) |
Végrehajtja az CommandText ellent Connection, és létrehoz egy IDataReader értéket az CommandBehavior egyik érték használatával. |
| ExecuteScalar() |
Végrehajtja a lekérdezést, és visszaadja a lekérdezés által visszaadott eredményhalmaz első sorának első oszlopát. A rendszer figyelmen kívül hagyja a további oszlopokat vagy sorokat. |
| Prepare() |
Létrehozza a parancs előkészített (vagy lefordított) verzióját az adatforráson. |