ODBC proti JDBC
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 JDBC (Java DatabBase Connectivity) 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. Podobno je JDBC podatkovni API za programski jezik Java. Programerji Java lahko uporabljajo most JDBC-ODBC za komunikacijo s katero koli bazo podatkov, ki je skladna z ODBC.
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 JDBC?
JDBC je podatkovni API, razvit za programski jezik Java. Sun Microsystems (prvi lastniki Jave) ga je izdal z JDK 1.1. Njegova trenutna različica je JDBC 4.0 (trenutno se distribuira z JAVA SE6). Paketi Java.sql in javax.sql vsebujejo razrede JDBC. Je vmesnik, ki odjemalcu pomaga pri dostopu do sistema podatkovnih baz z zagotavljanjem metod za poizvedovanje in posodabljanje podatkov v bazah podatkov. JDBC je bolj primeren za objektno usmerjene baze podatkov. Z uporabo mostu JDBC-ODBC lahko dostopate do katere koli baze podatkov, združljive z ODBC.
Kakšna je razlika med ODBC in JDBC?
ODBC je odprt vmesnik, ki ga lahko uporablja katera koli aplikacija za komunikacijo s katerim koli sistemom baze podatkov, medtem ko je JDBC vmesnik, ki ga lahko uporabljajo aplikacije Java za dostop do baz podatkov. Zato je ODBC za razliko od JDBC jezikovno neodvisen. Toda z uporabo mostu JDBC-ODBC lahko aplikacije Java komunicirajo tudi s katero koli bazo podatkov, ki je združljiva z ODBC.