Базы данных и ADO Объекты ADO в приложениях VBA

          Назад



9.2 Что такое ADO


Объекты ADO в приложениях VBA, MDAC, справка по ADO, объекты Connection, Command и Recordset

ADO расшифровывается как ActiveX Data Objects — набор программных объектов, построенных по технологии ActiveX (COM) и позволяющий получать данные и управлять ими на самых разных источниках. Другие наборы программных объектов для доступа к источникам данных, которые часто используются в приложениях Office — это DAO и RDO, но эти программные объекты устарели и к использованию в современных приложениях не рекомендуются. В настоящее время появилась новая версия ADO — ADO.NET, которая сильно отличается от обычной ADO и предназначена для работы в .NET Framework. Однако по причине того, что ADO.NET:

  • обязательно требует установленной .NET Framework (чего на многих старых компьютерах нет)
  • обычными средствами с ADO.NET из редактора Visual Basic работать не получится — требуется Visual Studio
  • отличается повышенной ресурсоемкостью

ADO.NET в этой книге рассматриваться не будет.

ADO умеет работать с самыми разными драйверами для подключения к базам данных, например, с драйверами OLE DB и ODBC. Поскольку ADO построен по технологии COM, эти объекты можно использовать в любых COM-совместимых языках программирования (VC++, Visual Basic, Delphi, VBA, VBScript, JScript, ActivePerl и т.п.).

Сами программные объекты поставляются в наборе драйверов для подключения к базам данных, которые называются MDAC (Microsoft Data Access Components). Этот набор есть на любом компьютере под управлением Windows 2000, XP или Windows 2003 (обычно сразу несколько версий). Самую свежую его версию можно совершенно бесплатно скачать с Web-сайта Microsoft. Настоятельно рекомендуется отслеживать появление новых версий MDAC и устанавливать их на компьютерах пользователей.

К справке по ADO проще всего обращаться из Microsoft Access. Для этого нужно открыть создать Microsoft Access, создать в нем новую пустую базу данных, переключиться в окно редактора кода (при помощи клавиш <Alt>+<F11>) и нажать на кнопку <F1>. Вторая строка сверху — это и есть справка по ADO (ActiveX Data Objects). ADO Programmer's Guide — это рассказ о том, как можно выполнять различные действия, а ADO Programmer's Reference — справка по объектам ADO и их свойствам, методам и событиям (см. рис. 9.1)

Рис. 9.1 Справка по ADO в Microsoft Access

Сама по себе объектная модель ADO очень проста и понятна. В ней — всего три главных объекта:

  • объект Connection — позволяет установить соединение с источником данных и управлять им. Все ошибки, которые возникают в ходе работы соединения, помещаются в сопутствующую коллекцию Errors.
  • объект Command — представляет команду, при помощи которой производится выполнение определенной операции на источнике данных (выполнение запроса, хранимой процедуры, создание или изменение объекта, изменение данных и т.п.). Если источник данных — SQL-совместимый, то объект Command, скорее всего, будет представлять команду SQL. Объекту Command сопутствует коллекция Parameters — параметры, которые передаются запросу или хранимой процедуре.
  • объект Recordset — представляет набор записей, полученных с источника или сгенерированный другим способом. Ему сопутствует коллекция Fields, представляющая информацию о столбцах в этом наборе записей (имя, тип, размерность данных и т.п.), а также сами данные.

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

Все объекты явно создавать необязательно — например, при создании объекта Recordset можно в автоматическом режиме создать объект Connection.

Прежде, чем приступать к работе с объектами ADO, необходимо добавить в вашем проекте ссылку на необходимую библиотеку. Для этого в меню Tools нужно выбрать References и установить флажок напротив строки Microsoft ActiveX Data Objects с нужным номером (в зависимости от того, какая версия библиотеки установлена у вас на клиентских компьютерах, на которых будет работать данное приложение). На момент создания этого курса последней версией MDAC была версия 2.8. Однако на практике рекомендуется выбирать более старую версию, например, версию 2.1, которая поставляется со всеми версиями Windows, начиная с Windows 2000. Функциональность разных версий практически одинакова, но при использовании этой версии вы сможете переносить свою программу на VBA с компьютера на компьютер, не беспокоясь о том, что на него нужно что-то доустанавливать.




Далее