ODBC (Open Database Connectivity)
У 1992 році Microsoft Corporation була створена як невід'ємна частина архітектури 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)
У 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.
|