ODBC (Отворена база данни)
През 1992 г. Microsoft Corporation беше създадена като неразделна част от Windows Open Services Architecture (WOSA) по отношение на базите данни, която установи набор от спецификации и предостави набор от стандартни API (Application Programming Interfaces) за достъп до бази данни. Тези API използват SQL за изпълнение на повечето от задачите си. Самият ODBC също поддържа езика SQL, а потребителите могат директно да изпращат SQL оператори към ODBC. --- най-ранните, но не винаги всемогъщи. ODBC (Open DataBase Connectivity) е интерфейс за програмиране на приложения (API), препоръчван от Microsoft и в момента широко приет в индустрията за достъп до бази данни, базиран на спецификациите X/Open и ISO/IEC интерфейс на ниво повикване (CLI) и използва Structured Query Language (SQL) като език за достъп до бази данни. Общата структура на ODBC има четири компонента:
А. Приложение: Изпълнение на обработка и извикане на ODBC API функции за подаване на SQL оператори и извличане на резултати. Б. Мениджър на драйвери: Зареждане/деинсталиране на драйвери според нуждите на приложението, обработка на извиквания на ODBC функции или прехвърляне към драйвера. C. Драйвер: Обработва извиквания на ODBC функции, изпраща SQL заявки към определен източник на данни и връща резултатите в приложението. Ако е необходимо, драйверът модифицира заявката на програмата, за да я подравни със синтаксиса, поддържан от съответната СУБД. D. Източник на данни: включително данните, които потребителят трябва да достъпи и свързаната с него операционна система, DBMS и мрежовата платформа, използвана за достъп до DBMS.
DAO (Обект за достъп до данни)
През 1993 г. Microsoft представи engine за база данни Microsoft Jet (първоначално използван за Microsoft Access, а сега поддържа други бази данни), който позволява на разработчиците да се свързват директно с Access таблици, както и към други бази данни чрез ODBC. DAO са най-подходящи за приложения с една система или за малко, локално разпределено приложение. Достъпът до базата данни на Jet е оптимизиран вътрешно и лесен за използване. Затова, ако базата данни е Access база данни и се използва локално, препоръчва се този метод за достъп --- специфичността на приложението
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 включва "мост" за свързване на 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.
|