ODBC vs JDBC
Tavaliselt on tarkvararakendused kirjutatud kindlas programmeerimiskeeles (nagu Java, C jne), samas kui andmebaasid aktsepteerivad päringuid mõnes muus andmebaasispetsiifilises keeles (nt SQL). Seega, kui tarkvararakendusel on vaja juurdepääsu andmebaasi andmetele, on vaja liidest, mis suudab keeli üksteisele tõlkida (rakendus ja andmebaas). Vastasel juhul peavad rakenduste programmeerijad õppima ja oma rakendustesse lisama andmebaasipõhiseid keeli. ODBC (avatud andmebaasi ühenduvus) ja JDBC (Java andmebaasi ühenduvus) on kaks liidest, mis lahendavad selle konkreetse probleemi. ODBC on platvormist, keelest ja operatsioonisüsteemist sõltumatu liides, mida saab selleks kasutada. Samamoodi on JDBC Java programmeerimiskeele andme-API. Java programmeerijad saavad kasutada JDBC-ODBC silda, et suhelda mis tahes ODBC-ga ühilduva andmebaasiga.
Mis on ODBC?
ODBC on andmebaasihaldussüsteemidele (DBMS) juurdepääsu liides. ODBC töötas välja SQL Access Group 1992. aastal, kui andmebaasi ja rakenduse vaheliseks suhtlemiseks polnud standardset andmekandjat. See ei sõltu konkreetsest programmeerimiskeelest ega andmebaasisüsteemist ega operatsioonisüsteemist. Programmeerijad saavad kasutada ODBC-liidest, et kirjutada rakendusi, mis saavad teha päringuid mis tahes andmebaasist, olenemata keskkonnast, milles see töötab, või kasutatavast DBMS-i tüübist.
Kuna ODBC draiver toimib rakenduse ja andmebaasi vahelise tõlkijana, suudab ODBC saavutada keele- ja platvormi sõltumatuse. See tähendab, et rakendus on vabastatud andmebaasipõhise keele tundmisest. Selle asemel teab ja kasutab see ainult ODBS-i süntaksit ning draiver tõlgib päringu andmebaasi keeles, millest see aru saab. Seejärel tagastatakse tulemused rakendusele arusaadavas vormingus. ODBC tarkvara API-d saab kasutada nii relatsiooniliste kui ka mitterelatsiooniliste andmebaasisüsteemidega. Teine suur eelis, kui ODBC on universaalne vahevara rakenduse ja andmebaasi vahel, on see, et iga kord, kui andmebaasi spetsifikatsioon muutub, ei pea tarkvara värskendama. Piisaks ainult ODBC draiveri värskendamisest.
Mis on JDBC?
JDBC on Java programmeerimiskeele jaoks välja töötatud andmete API. Selle andis välja koos JDK 1.1-ga Sun Microsystems (Java esialgsed omanikud). Ja selle praegune versioon on JDBC 4.0 (praegu levitatakse koos JAVA SE6-ga). Java.sql ja javax.sql paketid sisaldavad JDBC klasse. See on liides, mis aitab kliendil andmebaasisüsteemile juurde pääseda, pakkudes meetodeid andmebaasides olevate andmete pärimiseks ja värskendamiseks. JDBC sobib rohkem objektorienteeritud andmebaaside jaoks. JDBC-ODBC-silla abil pääsete juurde mis tahes ODBC-ühilduvale andmebaasile.
Mis vahe on ODBC ja JDBC vahel?
ODBC on avatud liides, mida saavad kasutada kõik rakendused mis tahes andmebaasisüsteemiga suhtlemiseks, samas kui JDBC on liides, mida Java-rakendused saavad kasutada andmebaasidele juurdepääsuks. Seetõttu on ODBC erinev alt JDBC-st keelest sõltumatu. Kuid JDBC-ODBC-silda kasutades saavad Java-rakendused suhelda ka mis tahes ODBC-ga ühilduva andmebaasiga.