Модель объектов ActiveX для управления данными

Объекты управления данными ActiveX (ADO/ ActiveX Data Objects) предназначены для обеспечения доступа к источникам данных разных видов, от текстовых файлов до распределенных баз данных. ADO представляет собой объектно-ориентированный интерфейс для приложений, использующих OLE DB. OLE DB — это программный интерфейс, удовлетворяющий спецификации COM (Component Object Model, компонентная модель объектов), который предоставляет унифицированный способ доступа к различным источникам данных. Интерфейс OLE DB разрабатывался с целью получения оптимальной функциональности для приложений разных видов и поэтому не является простым в использовании. ADO — промежуточное звено между приложением и OLE DB, предоставляющее разработчикам приложений удобный объектно-ориентированный интерфейс.

Существует три объектных модели, которые вместе обеспечивают те функции работы с данными, которые реализуются объектами DАО:

Стандартный набор функций для работы с данными распределяется между этими тремя моделями следующим образом:

Краткое описание объектов моделей ADO приведено в табл. 13.5—13.7.

Таблица 13.5. Объектная модель ADODB

Объект

Тип

Описание

Connection

Объект

Открывает сеанс обмена данными

Command

Объект

Представляет собой инструкцию SQL

Parameter

Объект

Представляет собой параметр инструкции SQL

Recordset

Объект

Представляет собой набор записей и позволяет осуществлять навигацию по записям и манипулировать с данными в нем

Field

Объект

Представляет собой поле (столбец) в наборе записей

Recordset

Error

Объект

Представляет собой информацию об ошибке, произошедшей во время сеанса связи

Property

Объект

Представляет характеристику (свойство) любого объекта ADO

Errors

Семейство

Все объекты Error в этом семействе создаются в ответ на одну ошибку, произошедшую во время сеанса связи

Parameters

Семейство

Содержит все объекты Parameter, ассоциированные с объектом Command

Fields

Семейство

Содержит все объекты Field, ассоциированные с набором записей Recordset

Properties

Семейство

Содержит все объекты Property, ассоциированные с объектом Connection, Command, Recordset или Field

Record

Объект

Представляет собой каталог или файл

Stream

Объект

Представляет собой содержимое файла

Таблица 13.6. Объектная модель ADOX

Объект

Тип

Описание

Catalog Объект Главный объект этой модели. Ссылается на источник данных и обеспечивает доступ ко всем объектам источника — таблицам, представлениям, процедурам, группам, пользователям

Tables

Семейство

Семейство таблиц, содержащихся в источнике данных. Каждый объект Table этого семейства ссылается на одну таблицу

indexes

Семейство

Содержит все индексы таблицы. Каждый объект index семейства ссылается на один из индексов

Keys

Семейство

Содержит все ключи таблицы. Каждый объект Key семейства ссылается на один из ключей

Columns

Семейство

Содержит объекты Column, которые ссылаются на столбцы в одном из объектов Table, index, Key

Groups

Семейство

Содержит все объекты Group каталога или пользователя. Каждый из объектов Group ссылается на бюджет группы в каталоге или пользователе

Users

Семейство

Содержит объекты User, которые представляют собой бюджеты пользователей, имеющих права доступа к защищенной базе данных

Procedures

Семейство

Содержит все хранимые процедуры в базе данных. Каждый объект Procedure семейства ссылается на одну из хранимых процедур

Views

Семейство

Содержит все представления (view) в базе данных

Иерархическая структура модели объектов ADOX представлена на рис. 13.6.

Рис. 13.6. Объектная модель ADOX

Таблица 13.7. Описание объектов JRO

Объект

Тип

Описание

JetEngine

Объект

Обеспечивает доступ к двум сервисам ядра базы данных Jet: сжатие базы данных и выгрузка данных из кэша в файл базы данных MDB

Replica Объект Представляет собой копию реплицированной базы данных
Filters Семейство Содержит набор объектов Filter, каждый из которых представляет собой набор записей, которые должны реплицироваться

Более подробное описание объектов JRO и их использования приведено в гл. 18.

В случае разработки многоуровневого клиент-серверного приложения для доступа к данным используется еще одна объектная модель — RDS (служба удаленного доступа к данным). Она включает три объекта, краткое описание которых приведено в табл. 13.8.

Таблица 13.8. Объектная модель RDS

Объект

Тип

Описание

RDS .DataSpace

Объект

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

RDSServer. DataFactory Объект Представляет собой встроенную программу — сервер данных, которая выполняет обработку данных и возвращает результат обработки
RDS.DataControl Объект Этот объект может использоваться для следующих целей: автоматическое выполнение функций объектов RDS. DataSpace и RDSServer .DataFactory, выполнение обработки данных или возвращение результата с помощью встроенных служб RDS, представление результата обработки данных в виде совокупности значений для визуальных элементов управления (в форме)