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


Поставщики OLE DB

Область применения: Access 2013, Office 2013

В руководстве по программированию ADO в разделе Введение рассматривается связь между ADO и остальной архитектурой Microsoft Data Access. OLE DB определяет набор COM-интерфейсов для предоставления приложениям единообразного доступа к данным, хранящимся в различных источниках информации. Такой подход позволяет источнику данных делиться своими данными через интерфейсы, которые поддерживают объем функций СУБД, подходящих для источника данных. По своей разработке высокопроизводительная архитектура OLE DB основана на использовании гибкой модели служб на основе компонентов. Вместо того чтобы иметь определенное количество промежуточных уровней между приложением и данными, OLE DB требует только столько компонентов, сколько требуется для выполнения конкретной задачи.

Например, предположим, что пользователь хочет выполнить запрос. Рассмотрим следующие сценарии.

  • Данные находятся в реляционной базе данных, для которой в настоящее время существует драйвер ODBC, но нет собственного поставщика OLE DB. Приложение использует ADO для связи с поставщиком OLE DB для ODBC, который затем загружает соответствующий драйвер ODBC. Драйвер передает инструкцию SQL в СУБД, которая извлекает данные.

  • Данные находятся в Microsoft SQL Server, для которых существует собственный поставщик OLE DB. Приложение использует ADO для связи напрямую с поставщиком OLE DB для Microsoft SQL Server. Посредники не требуются.

  • Данные находятся в Microsoft Exchange Server, для которых существует поставщик OLE DB, но который не предоставляет подсистему для обработки SQL-запросов. Приложение использует ADO для связи с поставщиком OLE DB для Microsoft Exchange и вызывает компонент обработчика запросов OLE DB для обработки запросов.

  • Данные находятся в файловой системе Microsoft NTFS в виде документов. Доступ к данным осуществляется с помощью собственного поставщика OLE DB через службу индексирования Майкрософт, которая индексирует содержимое и свойства документов в файловой системе, чтобы обеспечить эффективный поиск содержимого.

Во всех предыдущих примерах приложение может запрашивать данные. Потребности пользователя удовлетворяются с минимальным количеством компонентов. В каждом случае дополнительные компоненты используются только при необходимости, и вызываются только необходимые компоненты. Такая загрузка многократно используемых и общих компонентов значительно способствует повышению производительности при использовании OLE DB.

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

ADO предоставляет согласованный интерфейс более высокого уровня для различных поставщиков OLE DB.

В этой статье содержатся следующие разделы: