OLE DB




Главная
Новости
Статьи
Ремонт
Каркасный дом
Несущие конструкции
Металлические конструкции
Прочность дорог
Дорожные материалы
Стальные конструкции
Воздухоопорные сооружения
Грунтовые основания




15.01.2021


15.01.2021


15.01.2021


15.01.2021


14.01.2021


12.01.2021


09.01.2021


07.01.2021


06.01.2021


06.01.2021





Яндекс.Метрика
         » » OLE DB

OLE DB

17.12.2020

OLE DB (англ. Object Linking and Embedding, Database, иногда записывается OLEDB, OLE-DB) — набор COM-интерфейсов, которые позволяют приложениям унифицировано работать с данными разных источников и хранилищ информации. Разработана Microsoft в качестве дальнейшего развития технологии доступа к данным и должен был прийти на замену и в качестве преемника ODBC, расширяя набор функций для поддержки более широкого круга нереляционных источников данных, таких как объектно-ориентированные базы данных или электронные таблицы, и для которых не обязательно использовать SQL.

OLE DB отделяет хранилище данных от приложения, которое должно иметь доступ к нему через набор абстракций, состоящий из источника данных (DataSource), сессии (Session), команды (Command) и набора строк (Rowset). Это было сделано для предоставления унифицированного доступа к различным видам и источникам данных и изоляцию специфики взаимодействия с конкретным хранилищем. OLE DB концептуально разделена на потребителей (клиентов) и поставщиков (провайдеров). Потребителем является приложение, которому необходим доступ к данным, а поставщик реализует интерфейс доступа к данным и, следовательно, обеспечивает информацией потребителя.

Спецификация OLE DB является частью Microsoft Data Access Components (MDAC), представляющей собой группу технологий Microsoft, формирующих основу для единого и всеобщего способа разработки приложений для доступа к данным практически любого хранилища. В состав MDAC входят, к примеру, сервисы OLE DB (пул подключений и прочее) и компоненты ADODB.

Провайдеры OLE DB могут предоставлять доступ как к простым хранилищам данных, в виде текстовых файлов и электронных таблиц, так и к «настоящим» базам данных под управлением Oracle Database, Microsoft SQL Server, Sybase ASE, Firebird и Interbase. Также возможен доступ и к иерархическим хранилищам данных таких, как системы электронной почты.

Поскольку различные хранилища данных могут иметь разные возможности, поставщики OLE DB, как правило, не поддерживают все интерфейсы, описанные в спецификации OLE DB. Доступные возможности поставщика данных определяются через запрос указателей на COM интерфейсы его объектов или через чтение информационных свойств источника данных (DataSource). Отметим, что поставщик данных может реализовывать и предоставлять свои собственные COM-интерфейсы и структуры данных, не описанные в спецификации OLE DB.

Существует устойчивое мнение, что OLE DB ориентирован в большей степени на MS SQL, однако это не так. Типы данных «массивы» и несколько параллельных транзакций в рамках одного подключения, поддерживаемых спецификацией OLE DB, в MS SQL не поддерживаются, но присутствуют в других серверах баз данных (Firebird, Interbase). Если и есть некая «ориентированность», то она распространяется только на операционную систему. Поскольку OLE DB основано на COM-технологии, а полноценная поддержка COM есть только в Windows, то OLE-DB-провайдеры существуют только для операционных систем семейства Windows.

Долгое время Microsoft рекомендовала использовать OLE DB взамен ODBC, но с анонсом Microsoft SQL Server 2014 было объявлено, что прекращается поддержка «родного» OLE DB для этого продукта и остаётся только поддержка ODBC. Скорее всего это относилось к «чистому» OLE-DB-провайдеру для MSSQL (SQLOLEDB), а не к «Native SQL Client» (SQLNCLI), в котором были объединены провайдеры OLE DB и драйверы ODBC. Однако со стороны это выглядело как полный отказ от OLE DB как от технологии. В октябре 2017 года было объявлено об ошибочности этого решения и анонсирован выпуск обновленного OLE DB провайдера для MSSQL.