ODBC (Открытая связь с базой данных)
В 1992 году была создана корпорация Microsoft как неотъемлемая часть архитектуры Windows Open Services Architecture (WOSA) в области баз данных, которая установила набор спецификаций и предоставила набор стандартных API (интерфейсов программирования приложений) для доступа к базе данных. Эти API используют SQL для выполнения большинства своих задач. Сам ODBC также поддерживает язык SQL, и пользователи могут напрямую отправлять SQL-операторы в ODBC. --- самым ранним, но не всегда всемогущим. ODBC (Open DataBase Connectivity) — это интерфейс программирования приложений (API), который продвигается Microsoft и в настоящее время широко признан в отрасли для доступа к базе данных, основанный на спецификациях интерфейса вызова X/Open и ISO/IEC (CLI) и использует язык структурированных запросов (SQL) в качестве языка доступа к базе данных. Общая структура ODBC состоит из четырёх компонентов:
A. Приложение: Выполнять обработку и вызывать функции ODBC API для подачи SQL-операторов и получения результатов. B. Менеджер драйверов: загружать и удалять драйверы в зависимости от потребностей приложения, обрабатывать вызовы функций ODBC или передавать их драйверу. C. Драйвер: обрабатывает вызовы функций ODBC, отправляет SQL-запросы в указанный источник данных и возвращает результаты в приложение. При необходимости драйвер изменяет запрос программы, чтобы он согласовал его с синтаксисом, поддерживаемым соответствующей СУБД. D. Источник данных: включая данные, к которым пользователь должен получить доступ и связанную операционную систему, СУБД, а также сетевую платформу, используемую для доступа к СУБД.
DAO (объект доступа к данным)
В 1993 году Microsoft представила движок базы данных Microsoft Jet (изначально использовавшийся для Microsoft Access, а теперь поддерживает другие базы данных), который позволяет разработчикам напрямую подключаться к таблицам Access, как и к другим базам данных через ODBC. DAO лучше всего подходят для применения в одной системе или для небольших локально распределённых применений. Доступ к базе данных Jet оптимизирован внутри компании и прост в использовании. Поэтому, если база данных является базой доступа и используется локально, рекомендуется использовать этот метод доступа --- специфику приложения
RDO (Удалённые объекты данных)
В 1995 году RDO представлял собой объектно-ориентированный интерфейс доступа к данным к ODBC, объединённый с простым в использовании стилем DAO для предоставления интерфейса, демонстрирующего все основные функции и гибкость ODBC. Хотя RDO ограничен в плане хорошего доступа к базам данных Jet или ISAM, и он может получать доступ к реляционным базам данных только через существующие драйверы ODBC. Тем не менее, RDO доказал, что является лучшим интерфейсом для многих разработчиков SQL Server, Oracle и других крупных реляционных баз данных. RDO предоставляет всё более сложные объекты, свойства и методы доступа к хранимым процедурам и сложным наборам результатов. --- несомненно основана на ODBC
OLE DB (Связывание и вложение объектов, база данных)
В 1997 году Microsoft запустила стратегический системный программный интерфейс для управления данными по всей организации. OLE DB — это открытая спецификация, построенная на основе функциональности ODBC. ODBC разработан специально для доступа к реляционным базам данных, тогда как OLE DB используется для доступа к реляционным и нереляционным источникам информации, таким как базы данных хостов ISAM/VSAM и иерархические, хранилище электронной почты и файловой системы, текстовые, графовые и географические данные, а также пользовательские бизнес-объекты. OLE DB определяет набор COM-интерфейсов, которые инкапсулируют различные сервисы управления базами данных и позволяют создавать программные компоненты для реализации этих сервисов. Компоненты OLE DB включают поставщики данных (содержащие и представляющие данные), потребителей данных (использующие данные) и сервисные компоненты (обработка и доставку данных, такие как процессоры запросов и движки курсоров). Интерфейс OLE DB обеспечивает плавную интеграцию компонентов, позволяя производителям компонентов OLE DB быстро выводить на рынок высококачественные компоненты OLE DB. Кроме того, OLE DB включает «мост» для соединения ODBC, обеспечивающий стабильную поддержку различных используемых реляционных драйверов баз данных ODBC. --- утверждает, что заменяет ODBC, но также совместим с ODBC
ADO (ActiveX Data Object)
В 1996 году ADO стала преемником DAO/RDO. ADO 2.0 более функционально похож на RDO и, в целом, имеет схожие отношения отображения между двумя моделями. ADO «расширяет» объектную модель, используемую DAO и RDO, то есть содержит меньше объектов, больше свойств, методов (и параметров) и событий. Будучи последним способом доступа к базе данных, ADO также прост и прост в использовании, поэтому Microsoft ясно дала понять, что в будущем сосредоточится на ADO и не будет обновлять DAO/RDO, поэтому ADO стал основным направлением современной разработки баз данных. ADO включает три типа хранения данных: DSN (имя источника данных), ODBC (Open Data Connection) и OLE DB. Следующие процедуры подробно объяснят конкретную реализацию этих трёх методов. --- можно назвать слиянием системных программных интерфейсов, таких как ODBC и OLEDB, а также обновлением интерфейсов программирования на уровне приложений, таких как DAO и RDO.
ADO.NET
— это модель программирования, основанная на стандартах, которая может использоваться для создания распределённых приложений для обмена данными. В ADO.NET году DataSets играют важную роль, служа встроенными копиями некоторых данных базы данных. В отличие от RecordSets в ADO, DataSets могут включать любую таблицу данных, каждая из которых может использоваться для представления данных из таблицы базы данных или представления. DataSet находится в памяти и не прикрепляется к исходной базе данных, то есть не обязан оставаться подключённым к исходной базе данных. Основной технологией, выполняющей эту функцию, является XML — формат хранения и передачи, используемый в DataSets. Во время выполнения данные в DataSet необходимо обмениваться между компонентами, такими как объект бизнес-логики или asp.net веб-форма. Данные передаются с одного компонента в другой в виде XML-файла, который восстанавливает файл в форму DataSet. Подход DataSet идентичен реляционной модели данных, потому что протоколы каждого источника данных разные, и нам нужно получать доступ к источнику данных через правильный протокол. Некоторые старые источники данных используют протокол ODBC, а некоторые поздние — протокол OleDb, и сейчас появляется множество новых источников данных, ADO.NET предоставляют общий способ доступа к данным, а для разных источников используются разные библиотеки. Эти библиотеки называются поставщиками данных и обычно называются по типу источника данных и протоколу
Различия и связи между базами данных ODBC, DAO, ADO и OLEDB
ODBC — это базовая технология доступа, поэтому ODBC API может быть клиентским приложением, которое может настраивать и управлять базой данных снизу вверх, а также выполнять некоторые функции, которые передовые технологии баз данных не могут выполнить; Однако недостатком является то, что ODBC можно использовать только для реляционных баз данных, что затрудняет доступ к объектным базам данных и другим нереляционным базам данных с использованием ODBC. DAO обеспечивают механизм создания и обработки базами данных с помощью процедурного кода. Главная особенность — это простота работы с базами данных MICROSOFT JET, и это один из лучших технических интерфейсов для работы с базами данных JET. И она используется не только для доступа к этой базе данных, но и позволяет получить доступ к широкому спектру форматов данных — от текстовых файлов до больших фоновых баз данных — с помощью технологии DAO. ADO — это интерфейс доступа, основанный на OLE DB, объектно-ориентированной технологии OLE DB, унаследовавшей преимущества OLE DB. Это высокоуровневый интерфейс для доступа к базе данных.
Взаимоотношения между ADO и OLEDB
OLEDB — это интерфейс доступа к данным. Он используется сторонними драйверами, торговцами для разработки приложений, выводящих источники данных в ADO-технологию, или разработчиками для C++ для создания собственных компонентов баз данных. OLE DB — это важный системный программный интерфейс для доступа к данным, он является основой технологии ADO и источником данных для ADO.NET. ADO — это интерфейс доступа, основанный на OLE DB, объектно-ориентированной технологии OLE DB, унаследовавшей преимущества OLE DB. Это высокоуровневый интерфейс для доступа к базе данных.
Можно сказать, что ADO предоставляет высокоуровневые функции API приложений для OLEDB.
|