ODBC proti ADO
Običajno so programske aplikacije napisane v določenem programskem jeziku (kot je Java, C itd.), medtem ko baze podatkov sprejemajo poizvedbe v drugem jeziku, specifičnem za zbirko podatkov (kot je SQL). Ko mora torej programska aplikacija dostopati do podatkov v zbirki podatkov, je potreben vmesnik, ki lahko prevaja jezike drug v drugega (aplikacijo in zbirko podatkov). V nasprotnem primeru se morajo programerji aplikacij naučiti in v svoje aplikacije vključiti jezike, specifične za bazo podatkov. ODBC (Open Database Connectivity) in OLE DB (Object Linking and Embedding, Database) sta dva vmesnika, ki rešujeta ta specifični problem. ODBC je vmesnik, neodvisen od platforme, jezika in operacijskega sistema, ki se lahko uporablja v ta namen. OLE DB je naslednik ODBC. ADO je ovoj za OLE DB.
Kaj je ODBC?
ODBC je vmesnik za dostop do sistemov za upravljanje baz podatkov (DBMS). ODBC je leta 1992 razvila skupina SQL Access Group, ko še ni bilo standardnega medija za komunikacijo med bazo podatkov in aplikacijo. Ni odvisno od določenega programskega jezika ali sistema baze podatkov ali operacijskega sistema. Programerji lahko uporabljajo vmesnik ODBC za pisanje aplikacij, ki lahko poizvedujejo po podatkih iz katere koli zbirke podatkov, ne glede na okolje, v katerem se izvaja, ali vrsto DBMS, ki ga uporablja.
Ker gonilnik ODBC deluje kot prevajalec med aplikacijo in bazo podatkov, lahko ODBC doseže neodvisnost od jezika in platforme. To pomeni, da je aplikacija razbremenjena poznavanja specifičnega jezika baze podatkov. Namesto tega bo poznal in uporabljal samo sintakso ODBS, gonilnik pa bo prevedel poizvedbo v bazo podatkov v jeziku, ki ga razume. Nato se rezultati vrnejo v obliki, ki jo aplikacija razume. API programske opreme ODBC se lahko uporablja z relacijskimi in nerelacijskimi sistemi baz podatkov. Druga velika prednost uporabe ODBC kot univerzalne vmesne programske opreme med aplikacijo in bazo podatkov je, da vsakič, ko se specifikacija baze podatkov spremeni, programske opreme ni treba posodobiti. Zadostovala bi le posodobitev gonilnika ODBC.
Kaj je ADO?
ADO je zbirka objektov COM (Component Object Mode), ki delujejo kot vmesnik za dostop do podatkov v virih podatkov. ADO je leta 1996 razvil Microsoft kot del Microsoft Data Access Components (MDAC). ADO tvori vmesno plast med aplikacijami, napisanimi v nekem programskem jeziku, in OLE DB (podatkovni API, ki ga je razvil Microsoft in je naslednik ODBC). Programerji lahko uporabljajo ADO za dostop do podatkov, ne da bi poznali osnovne podrobnosti izvedbe baze podatkov. Čeprav vam za uporabo ADO ni treba poznati nobenega SQL-ja, lahko zagotovo izvajate stavke SQL z njim.
Kakšna je razlika med ODBC in ADO?
ODBC je odprt vmesnik, ki ga lahko uporablja katera koli aplikacija za komunikacijo s katerim koli sistemom baze podatkov, medtem ko je ADO ovoj okrog OLE DB (ki je naslednik ODBC). Če zbirka podatkov ne podpira OLE (okolja brez OLE), je ODBC najboljša izbira. Če okolje ni SQL, potem morate uporabiti ADO (ker ODBC deluje samo s SQL). Če so potrebne interoperabilne komponente baze podatkov, je treba namesto ODBC uporabiti ADO. Vendar je za 16-bitne podatke dostop do ODBC edina možnost (ADO ne podpira 16-bitov). Končno je ADO najboljša izbira za povezovanje z več bazami podatkov hkrati (ODBC se lahko poveže samo z eno bazo podatkov hkrati).