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


OleDbCommandBuilder Класс

Определение

Автоматически генерирует однотабличные команды, которые позволяют согласовать изменения, вносимые в объект DataSet, со связанной базой данных. Этот класс не наследуется.

public ref class OleDbCommandBuilder sealed : System::Data::Common::DbCommandBuilder
public ref class OleDbCommandBuilder sealed : System::ComponentModel::Component
public sealed class OleDbCommandBuilder : System.Data.Common.DbCommandBuilder
public sealed class OleDbCommandBuilder : System.ComponentModel.Component
type OleDbCommandBuilder = class
    inherit DbCommandBuilder
type OleDbCommandBuilder = class
    inherit Component
Public NotInheritable Class OleDbCommandBuilder
Inherits DbCommandBuilder
Public NotInheritable Class OleDbCommandBuilder
Inherits Component
Наследование
Наследование
OleDbCommandBuilder

Примеры

В следующем примере используются OleDbCommand, вместе OleDbDataAdapter и OleDbConnectionдля выбора строк из источника данных. В этом примере передается инициализированный DataSetобъект , строка подключения, строка запроса, которая является инструкцией SQL SELECT, и строка, которая является именем таблицы источника данных. Затем в примере создается объект OleDbCommandBuilder.

public static DataSet UpdateRows(string connectionString,
    string queryString, string tableName)
{
    DataSet dataSet = new DataSet();
    using (OleDbConnection connection = new OleDbConnection(connectionString))
    {
        OleDbDataAdapter adapter = new OleDbDataAdapter();
        adapter.SelectCommand = new OleDbCommand(queryString, connection);
        OleDbCommandBuilder cb = new OleDbCommandBuilder(adapter);

        connection.Open();

        adapter.Fill(dataSet, tableName);

        //code to modify data in DataSet here

        cb.GetDeleteCommand();
        //Without the OleDbCommandBuilder this line would fail
        adapter.Update(dataSet, tableName);

        connection.Close();
    }
    return dataSet;
}
Public Shared Function UpdateRows(ByVal connectionString As String, _
ByVal queryString As String, ByVal tableName As String) As DataSet

    Dim dataSet As New DataSet()

    Using connection As New OleDbConnection(connectionString)
        Dim adapter As New OleDbDataAdapter()
        adapter.SelectCommand = New OleDbCommand(queryString, connection)
        Dim builder As New OleDbCommandBuilder(adapter)

        connection.Open()

        adapter.Fill(dataSet, tableName)

        ' Code to modify data in DataSet here 

        builder.GetUpdateCommand()

        ' Without the OleDbCommandBuilder this line would fail.
        adapter.Update(dataSet, tableName)
    End Using

    Return dataSet
End Function

Комментарии

не OleDbDataAdapter создает автоматически инструкции SQL, необходимые для согласования изменений, внесенных в DataSet , с соответствующим источником данных. Однако можно создать объект для автоматического OleDbCommandBuilder создания инструкций SQL для обновлений из одной таблицы, если задано SelectCommandOleDbDataAdapterсвойство объекта . Затем все дополнительные инструкции SQL, которые не заданы, создаются с помощью OleDbCommandBuilder.

Объект OleDbCommandBuilder регистрирует себя в качестве прослушивателя для RowUpdating событий всякий раз, когда вы задаете DataAdapter свойство . Одновременно можно связать только один OleDbDataAdapter объект или OleDbCommandBuilder один объект.

Для создания инструкций OleDbCommandBuilder INSERT, UPDATE или DELETE использует SelectCommand свойство для автоматического получения требуемого набора метаданных. При изменении SelectCommand после получения метаданных, например после первого обновления, необходимо вызвать RefreshSchema метод для обновления метаданных.

также OleDbCommandBuilder использует Connectionсвойства , и Transaction , CommandTimeoutна которые ссылается SelectCommand. Пользователь должен вызвать , RefreshSchema если одно или несколько из этих свойств были изменены, или если SelectCommand само свойство заменено. InsertCommandВ противном случае свойства , UpdateCommandи DeleteCommand сохраняют свои предыдущие значения.

При вызове DisposeOleDbCommandBuilder метод отсоединяется от OleDbDataAdapter, а созданные команды больше не используются.

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

OleDbCommandBuilder()

Инициализирует новый экземпляр класса OleDbCommandBuilder.

OleDbCommandBuilder(OleDbDataAdapter)

Инициализирует новый экземпляр класса OleDbCommandBuilder вместе со связанным объектом OleDbDataAdapter.

Свойства

CanRaiseEvents

Возвращает значение, показывающее, может ли компонент вызывать событие.

(Унаследовано от Component)
CatalogLocation

Возвращает или задает CatalogLocation для экземпляра класса DbCommandBuilder.

(Унаследовано от DbCommandBuilder)
CatalogSeparator

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

(Унаследовано от DbCommandBuilder)
ConflictOption

Указывает, какое значение типа ConflictOption должно использоваться объектом DbCommandBuilder.

(Унаследовано от DbCommandBuilder)
Container

Возвращает объект IContainer, который содержит коллекцию Component.

(Унаследовано от Component)
DataAdapter

Возвращает или задает объект OleDbDataAdapter, для которого автоматически создаются операторы SQL.

DesignMode

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

(Унаследовано от Component)
Events

Возвращает список обработчиков событий, которые прикреплены к этому объекту Component.

(Унаследовано от Component)
QuotePrefix

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

QuotePrefix

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

(Унаследовано от DbCommandBuilder)
QuoteSuffix

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

QuoteSuffix

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

(Унаследовано от DbCommandBuilder)
SchemaSeparator

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

(Унаследовано от DbCommandBuilder)
SetAllValues

Указывает, включены все значения столбца в инструкции UPDATE или только измененные значения.

(Унаследовано от DbCommandBuilder)
Site

Получает или задает ISite объекта Component.

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

Методы

ApplyParameterInfo(DbParameter, DataRow, StatementType, Boolean)

Разрешает реализации поставщика класса DbCommandBuilder обрабатывать дополнительные свойства параметров.

(Унаследовано от DbCommandBuilder)
CreateObjRef(Type)

Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.

(Унаследовано от MarshalByRefObject)
DeriveParameters(OleDbCommand)

Извлекает сведения о параметрах из хранимой процедуры, указанной в объекте OleDbCommand, и включает их в коллекцию параметров Parameters указанного объекта OleDbCommand.

Dispose()

Освобождает все ресурсы, занятые модулем Component.

(Унаследовано от Component)
Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые объектом DbCommandBuilder, а при необходимости освобождает также управляемые ресурсы.

(Унаследовано от DbCommandBuilder)
Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые объектом Component, а при необходимости освобождает также управляемые ресурсы.

(Унаследовано от Component)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetDeleteCommand()

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

GetDeleteCommand(Boolean)

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

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetInsertCommand()

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

GetInsertCommand(Boolean)

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

GetLifetimeService()
Устаревшие..

Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра.

(Унаследовано от MarshalByRefObject)
GetParameterName(Int32)

Возвращает имя указанного параметра в формате @p#. Используется при создании пользовательского построителя команд.

(Унаследовано от DbCommandBuilder)
GetParameterName(String)

Возвращает полное имя параметра при данном частичном имени параметра.

(Унаследовано от DbCommandBuilder)
GetParameterPlaceholder(Int32)

Возвращает местозаполнитель для параметра в связанной инструкции SQL.

(Унаследовано от DbCommandBuilder)
GetSchemaTable(DbCommand)

Возвращает таблицу схемы для объекта DbCommandBuilder.

(Унаследовано от DbCommandBuilder)
GetService(Type)

Возвращает объект, представляющий службу, предоставляемую классом Component или классом Container.

(Унаследовано от Component)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
GetUpdateCommand()

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

GetUpdateCommand(Boolean)

Возвращает автоматически созданный объект OleDbCommand, который требуется для выполнения операций обновления в источнике данных (дополнительно могут использоваться столбцы для определения имен параметров).

InitializeCommand(DbCommand)

Сбрасывает свойства CommandTimeout, Transaction, CommandType и UpdateRowSource в объекте DbCommand.

(Унаследовано от DbCommandBuilder)
InitializeLifetimeService()
Устаревшие..

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.

(Унаследовано от MarshalByRefObject)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
MemberwiseClone(Boolean)

Создает неполную копию текущего объекта MarshalByRefObject.

(Унаследовано от MarshalByRefObject)
QuoteIdentifier(String, OleDbConnection)

При заданном идентификаторе без кавычек в каталоге, набранном в правильном регистре, возвращает заключенный в кавычки идентификатор в корректной форме. При этом корректно исключаются встроенные в идентификатор кавычки.

QuoteIdentifier(String)

При заданном идентификаторе без кавычек в каталоге, набранном в правильном регистре, возвращает заключенный в кавычки идентификатор в корректной форме. При этом корректно исключаются встроенные в идентификатор кавычки.

RefreshSchema()

Очищает команды, связанные с этим объектом OleDbCommandBuilder.

RefreshSchema()

Очищает команды, связанные с этим объектом DbCommandBuilder.

(Унаследовано от DbCommandBuilder)
RowUpdatingHandler(RowUpdatingEventArgs)

Добавляет обработчик событий для события RowUpdating.

(Унаследовано от DbCommandBuilder)
SetRowUpdatingHandler(DbDataAdapter)

Регистрирует объект DbCommandBuilder, чтобы обработать событие RowUpdating для объекта DbDataAdapter.

(Унаследовано от DbCommandBuilder)
ToString()

Возвращает объект String, содержащий имя Component, если оно есть. Этот метод не следует переопределять.

(Унаследовано от Component)
UnquoteIdentifier(String, OleDbConnection)

При заданном идентификаторе без кавычек в каталоге, набранном в правильном регистре, возвращает заключенный в кавычки идентификатор в корректной форме. При этом все кавычки, внедренные в идентификатор, корректно сохраняются.

UnquoteIdentifier(String)

При заданном идентификаторе без кавычек в каталоге, набранном в правильном регистре, возвращает заключенный в кавычки идентификатор в корректной форме. При этом все кавычки, внедренные в идентификатор, корректно сохраняются.

События

Disposed

Возникает при удалении компонента путем вызова метода Dispose().

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

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

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