Иллюстрированный самоучитель по Microsoft Access 2002

Универсальный доступ к данным через OLE DB

Компоненты OLE DB

В OLE DB определена иерархия компонентов, каждый из которых является СОМ-объектом (рис. 17.3).

Иллюстрированный самоучитель по Microsoft Access 2002 › Проекты Microsoft Access 2002 › Универсальный доступ к данным через OLE DB
Рис. 17.3. Объекты – компоненты OLE DB

  • Источники данных (Data Source) – объекты, которые реализуют подключение к источнику данных: Они определяют нужный OLE DB-провайдер, проверяют права доступа потребителя данных и инициируют соединение с источником данных.

    Замечание
    Следует различать объект – источник данных и источник данных, который фактически содержит данные
    .

  • Сеансы (Sessions) – объекты, которые реализуют функции поддержки соединения с источником данных. Они предоставляют контекст для выполнения транзакций и команд. Основная цель сеанса – установить рамки транзакции. Один объект – источник данных может поддерживать несколько сеансов, а значит, и несколько транзакций.
  • Транзакции (Transactions) – объекты, которые обеспечивают реализацию механизма транзакций. Они предоставляют методы для того, чтобы начать транзакцию для сеанса или новую транзакцию внутри текущей и подтвердить или отменить транзакцию самого нижнего уровня.
  • Команды (Commands) – объекты, которые реализуют выполнение действий с данными (например, запросов). Команды порождаются сеансом, и в одном сеансе можно создать несколько команд.
  • Наборы рядов (Rowsets) – объекты, которые предоставляют данные в табличной форме. Они порождаются либо сеансом, либо командой в качестве результата ее выполнения. Непосредственно из сессии можно создать набор рядов, содержащий все данные таблицы. Для реализации такого простого запроса не требуется команды. В остальных же случаях для создания набора рядов используются команды.

Microsoft ActiveX Data Objects (ADO)

Хотя OLE DB является очень мощным интерфейсом для работы с данными, этот интерфейс является низкоуровневым. Для удобства работы с OLE DB, так же как и для ODBC, была разработана объектная модель, которую назвали ADO (ActiveX Data Objects). Эта модель была описана в разд. "Объектные модели Microsoft Access" гл. 13. Здесь хотелось бы указать на те достоинства этой модели, которые позволяют говорить о ее ключевой роли в приложениях, связанных с обработкой данных, в ближайшем будущем.

  • ADO является общей программной моделью для работы с данными различных типов. Она разрабатывалась специально для того, чтобы заменить все другие интерфейсы работы с данными. Впервые она была реализована в Internet Information Server (IIS), где успешно работала вместе с Active Server Pages.
  • Модель включила ряд возможностей других известных объектных моделей (DAO и RDO), хотя и не полностью. Но она является расширяемой и в очередной версии должна превзойти эти модели как по функциональности, так и по производительности.
  • Так как ADO реализована на базе СОМ-объектов, то она может быть использована в любом языке, который может работать с СОМ-объектами, в том числе и в VBA.
  • ADO обеспечивает доступ к любому OLE DB источнику данных, для которого имеется OLE DB провайдер, и, более того, она позволяет расширить функциональность провайдера.
  • ADO реализована таким образом, чтобы минимизировать сетевой трафик в интернет-приложениях и сократить число промежуточных слоев между фронтальным (клиентским) приложением и источниками данных. Это требуется для того, чтобы сделать интерфейс как можно более легким и высокопроизводительным.
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.