Поделиться через


Класс SqlCeCommand

Представляет инструкцию SQL, предназначенную для выполнения в источнике данных.

Иерархия наследования

System.Object
  System.MarshalByRefObject
    System.ComponentModel.Component
      System.Data.Common.DbCommand
        System.Data.SqlServerCe.SqlCeCommand

Пространство имен:  System.Data.SqlServerCe
Сборка:  System.Data.SqlServerCe (в System.Data.SqlServerCe.dll)

Синтаксис

'Декларация
Public NotInheritable Class SqlCeCommand _
    Inherits DbCommand _
    Implements ICloneable
'Применение
Dim instance As SqlCeCommand
public sealed class SqlCeCommand : DbCommand, 
    ICloneable
public ref class SqlCeCommand sealed : public DbCommand, 
    ICloneable
[<SealedAttribute>]
type SqlCeCommand =  
    class
        inherit DbCommand
        interface ICloneable
    end
public final class SqlCeCommand extends DbCommand implements ICloneable

Тип SqlCeCommand обеспечивает доступ к следующим элементам.

Конструкторы

  Имя Описание
Открытый метод SqlCeCommand() Инициализация нового экземпляра класса SqlCeCommand.
Открытый метод SqlCeCommand(String) Инициализирует новый экземпляр класса SqlCeCommand по тексту запроса.
Открытый метод SqlCeCommand(String, SqlCeConnection) Инициализирует новый экземпляр класса SqlCeCommand по тексту запроса и соединению SqlCeConnection.
Открытый метод SqlCeCommand(String, SqlCeConnection, SqlCeTransaction) Инициализирует новый экземпляр класса SqlCeCommand по тексту запроса, соединению SqlCeConnection и объекту транзакции SqlCeTransaction.

В начало

Свойства

  Имя Описание
Защищенное свойство CanRaiseEvents (унаследовано из Component)
Открытое свойство CommandText Возвращает или задает инструкцию SQL для выполнения в источнике данных. (Переопределяет DbCommand.CommandText.)
Открытое свойство CommandTimeout Возвращает или задает время ожидания, после которого попытка выполнить команду завершается ошибкой. (Переопределяет DbCommand.CommandTimeout.)
Открытое свойство CommandType Возвращает или задает значение, указывающее, как интерпретируется свойство CommandText. (Переопределяет DbCommand.CommandType.)
Открытое свойство Connection Возвращает или задает соединение SqlCeConnection, используемое этим экземпляром SqlCeCommand.
Открытое свойство Container (унаследовано из Component)
Защищенное свойство DbConnection (унаследовано из DbCommand)
Защищенное свойство DbParameterCollection (унаследовано из DbCommand)
Защищенное свойство DbTransaction (унаследовано из DbCommand)
Защищенное свойство DesignMode (унаследовано из Component)
Открытое свойство DesignTimeVisible Метод get всегда возвращает значение false, метод set всегда вызывает исключение NotSupportedException. (Переопределяет DbCommand.DesignTimeVisible.)
Защищенное свойство Events (унаследовано из Component)
Открытое свойство IndexName Указывает открываемый индекс.
Открытое свойство Parameters Возвращает коллекцию SqlCeParameterCollection.
Открытое свойство Site (унаследовано из Component)
Открытое свойство Transaction Возвращает или задает транзакцию, в которой выполняется команда SqlCeCommand.
Открытое свойство UpdatedRowSource Возвращает или задает способ применения результатов выполнения команды к строке данных DataRow при использовании метода Update объекта DbDataAdapter. Это свойство не должно использоваться при работе с поставщиком данных .NET Compact Framework для SQL Server Compact. (Переопределяет DbCommand.UpdatedRowSource.)

В начало

Методы

  Имя Описание
Открытый метод Cancel Пытается отменить выполнение команды SqlCeCommand. (Переопределяет DbCommand.Cancel().)
Защищенный метод CreateDbParameter (унаследовано из DbCommand)
Открытый метод CreateObjRef (унаследовано из MarshalByRefObject)
Открытый метод CreateParameter Создает новый экземпляр объекта SqlCeParameter.
Открытый метод Dispose() (унаследовано из Component)
Защищенный метод Dispose(Boolean) (унаследовано из Component)
Открытый метод Equals (унаследовано из Object)
Защищенный метод ExecuteDbDataReader (унаследовано из DbCommand)
Открытый метод ExecuteNonQuery Выполняет инструкцию SQL для соединения SqlCeConnection и возвращает число обработанных строк. (Переопределяет DbCommand.ExecuteNonQuery().)
Открытый метод ExecuteReader() Отправляет CommandText в Connection и создает SqlCeDataReader.
Открытый метод ExecuteReader(CommandBehavior) Передает команду CommandText соединению Connection и создает экземпляр SqlCeDataReader с одним из значений CommandBehavior.
Открытый метод ExecuteResultSet(ResultSetOptions) Отправляет CommandText в Connection и создает SqlCeResultSet с помощью ResultSetOptions.
Открытый метод ExecuteResultSet(ResultSetOptions, SqlCeResultSet) Отправляет CommandText в Connection и создает SqlCeResultSet с помощью ResultSetOptions.
Открытый метод ExecuteScalar Выполняет запрос и возвращает из результирующего набора первый столбец первой строки. Дополнительные столбцы или строки не возвращаются. (Переопределяет DbCommand.ExecuteScalar().)
Защищенный метод Finalize (унаследовано из Component)
Открытый метод GetHashCode (унаследовано из Object)
Открытый метод GetLifetimeService (унаследовано из MarshalByRefObject)
Защищенный метод GetService (унаследовано из Component)
Открытый метод GetType (унаследовано из Object)
Открытый метод InitializeLifetimeService (унаследовано из MarshalByRefObject)
Защищенный метод MemberwiseClone() (унаследовано из Object)
Защищенный метод MemberwiseClone(Boolean) (унаследовано из MarshalByRefObject)
Открытый метод Prepare Создает подготовленную (скомпилированную) версию команды для источника данных. (Переопределяет DbCommand.Prepare().)
Открытый метод SetRange Ограничивает набор строк, считываемых экземпляром SqlCeDataReader.
Открытый метод ToString (унаследовано из Component)

В начало

События

  Имя Описание
Открытое событие Disposed (унаследовано из Component)

В начало

Явные реализации интерфейса

  Имя Описание
Явная реализация интерфейсаЗакрытый метод ICloneable.Clone
Явная реализация интерфейсаЗакрытое свойство IDbCommand.Connection (унаследовано из DbCommand)
Явная реализация интерфейсаЗакрытый метод IDbCommand.CreateParameter (унаследовано из DbCommand)
Явная реализация интерфейсаЗакрытый метод IDbCommand.ExecuteReader() (унаследовано из DbCommand)
Явная реализация интерфейсаЗакрытый метод IDbCommand.ExecuteReader(CommandBehavior) (унаследовано из DbCommand)
Явная реализация интерфейсаЗакрытое свойство IDbCommand.Parameters (унаследовано из DbCommand)
Явная реализация интерфейсаЗакрытое свойство IDbCommand.Transaction (унаследовано из DbCommand)

В начало

Замечания

При создании экземпляра объекта SqlCeCommand свойствам, доступным для чтения-записи, присваиваются их начальные значения. Список этих значений см. в конструкторе SqlCeCommand.

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

Метод

Описание

ExecuteReader

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

ExecuteNonQuery

Выполняет INSERT, DELETE и UPDATE и другие инструкции SQL.

ExecuteScalar

Производит выборку из базы данных единичного значения (например полученного в результате статистической обработки).

ExecuteResultSet

Выполняет команды и возвращает результирующий набор.

Поставщик данных для SQL Server Compact не поддерживает пакетные запросы. Команды должны быть представлены в следующем формате.

Select * from Customers , но не Select * from Customers; Select * from Orders;

Возможно, перед выполнением кода, сформированного для System.Data.SqlClient, придется изменить запросы, приведя их в соответствие этому ограничению.

SQL Server Compact поддерживает несколько одновременных соединений, а также несколько команд, совместно использующих одно и то же соединение. Это означает, что в одном и том же соединении возможна работа нескольких экземпляров SqlCeDataReader. В этом заключается отличие от System.Data.SqlClient.

Если возникло неустранимое исключение SqlCeException во время вызова метода, выполняющего SqlCeCommand, соединение SqlCeConnection может быть закрыто. Его можно открыть заново и продолжить работу.

Примеры

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

Dim query As String = "SELECT [Order ID], [Customer] FROM Orders"
Dim conn As New SqlCeConnection(connString)
Dim cmd As New SqlCeCommand(query, conn)

conn.Open()
Dim rdr As SqlCeDataReader = cmd.ExecuteReader()

Try
    ' Iterate through the results
    '
    While rdr.Read()
        Dim val1 As Integer = rdr.GetInt32(0)
        Dim val2 As String = rdr.GetString(1)
    End While
Finally
    ' Always call Close when done reading
    '
    rdr.Close()

    ' Always call Close when done reading
    '
    conn.Close()
End Try
string query = "SELECT [Order ID], [Customer] FROM Orders";
SqlCeConnection conn = new SqlCeConnection(connString);
SqlCeCommand cmd = new SqlCeCommand(query, conn);

conn.Open();
SqlCeDataReader rdr = cmd.ExecuteReader();

try
{
    // Iterate through the results
    //
    while (rdr.Read())
    {
        int val1 = rdr.GetInt32(0);
        string val2 = rdr.GetString(1);
    }
}
finally
{
    // Always call Close when done reading
    //
    rdr.Close();

    // Always call Close when done reading
    //
    conn.Close();
}

Безопасность многопоточности

Все общие статические члены (Shared в Microsoft Visual Basic) этого типа можно использовать в потокобезопасных операциях. Потокобезопасная работа с членами экземпляров типа не гарантируется.

См. также

Справочник

Пространство имен System.Data.SqlServerCe

SqlCeDataAdapter

SqlCeConnection