Вообще-то, что же такое OLEDB физически ? Это просто набор интерфейсов COM. Очередная попытка создать универсальный механизм доступа к любым данным в независимости ни от чего, ни от типа, ни от местоположения. Например, через OLEDB можно обращаться к:
- базам данных типа IMS DB2 - это базы данных для майнфреймов
- серверам баз данных типа ORACLE и MS SQL SERVER
- настольным базам данных типа ACCESS, Paradox, FoxPro
- файловой системе NTFS или UNIX
- системам электронной почты типа Exchange
- индексно-последовательным файлам
- и ко многим другим данным...
Понятие универсального доступа к данным это реализация стратегии Microsoft - с любыми данными можно и нужно работать одинаково. Вот первым в ряде средств и стоит OLEDB. Это низкоуровневый интерфейс. Он напрямую поддерживает ODBC, так как эта спецификация была взята за основу. Главное отличие от ODBC в том, что ODBC была создана для доступа только к реляционным данным, а вот OLEDB реализует доступ к любым данным.
Рассматривая OLEDB можно сказать, что она состоит из 3 частей или компонентов:
- потребителей данных - data consumers
- провайдеров данных - data provides
- сервисных компонентов - service components
Потребители данных - это наши приложения написанные на Visual C++ или Visual Basic, которые хотят получать данные используя интерфейс OLEDB. Кстати любое приложение, которое иcпользует ADO, тоже является потребителем OLEDB, так как ADO более высокоуровневый интерфейс доступа к методам OLEDB.
Провайдеры - это те, кто обеспечивает непосредсвенный доступ к данным, например, Microsoft SQL Server.
Сервисные компоненты передают данные и расширяют возможности. Это промежуточное звено между провайдером и потребителем.
