IDbCommand Интерфейс

Определение

Представляет инструкцию 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 это префикс SqlCommand класса в System.Data.SqlClient пространстве имен.

При наследовании от IDbCommand интерфейса необходимо реализовать следующие конструкторы:

Элемент Описание
PrvCommand() Инициализирует новый экземпляр класса PrvCommand.
PrvCommand(string cmdText) Инициализирует новый экземпляр класса PrvCommand с текстом запроса.
PrvCommand(string cmdText, PrvConnection connection) Инициализирует новый экземпляр класса PrvCommand с текстом запроса и PrvConnection.
PrvCommand(string cmdText, PrvConnection connection, PrvTransaction transaction) Инициализирует новый экземпляр класса PrvCommand с текстом запроса, PrvConnection и PrvTransaction.

Свойства

CommandText

Возвращает или задает текстовую команду, выполняемую применительно к источнику данных.

CommandTimeout

Возвращает или задает время ожидания (в секундах) перед прекращением попытки выполнить команду и выводом ошибки.

CommandType

Указывает или определяет способ интерпретации свойства CommandText.

Connection

Возвращает или задает объект IDbConnection, используемый этим экземпляром класса IDbCommand.

Parameters

Возвращает набор IDataParameterCollection.

Transaction

Возвращает или задает транзакцию, в рамках которой выполняется объект Command поставщика данных .NET.

UpdatedRowSource

Возвращает или задает способы применения результатов команд к объекту DataRow при использовании метода Update(DataSet) объекта DbDataAdapter.

Методы

Cancel()

Пытается отменить выполнение IDbCommand.

CreateParameter()

Создает новый экземпляр объекта IDbDataParameter .

Dispose()

Выполняет определяемые приложением задачи, связанные с удалением, высвобождением или сбросом неуправляемых ресурсов.

(Унаследовано от IDisposable)
ExecuteNonQuery()

Выполняет инструкцию SQL для объекта Connection поставщика данных .NET и возвращает число задействованных строк.

ExecuteReader()

Выполняет CommandText применительно к объекту Connection и создает IDataReader.

ExecuteReader(CommandBehavior)

Выполняет CommandText применительно к объекту Connection и создает IDataReader с помощью одного из значений CommandBehavior.

ExecuteScalar()

Выполняет запрос и возвращает первый столбец первой строки результирующего набора, возвращаемого запросом. Дополнительные столбцы или строки не обрабатываются.

Prepare()

Создает подготовленную (или скомпилированную) версию команды в источнике данных.

Применяется к

См. также раздел