ODBC vs OLEDB
Softverske aplikacije obično se pišu na određenom programskom jeziku (kao što je Java, C #, itd.), Dok baze podataka prihvaćaju upite u nekom drugom jeziku specifičnom za bazu podataka (kao što je SQL). Stoga, kada je softverskoj aplikaciji potreban za pristup podacima u bazi podataka, potrebno je sučelje koje jezike može međusobno prevesti (aplikacija i baza podataka). Inače, aplikacijski programeri moraju naučiti i u svoje programe uključiti određene jezike baze podataka. ODBC (povezivanje otvorene baze podataka) i OLEDB (povezivanje i ugradnja objekata, baza podataka) dva su sučelja koja rješavaju ovaj specifični problem. ODBC je sučelje platforme, jezika i operacijskog sustava koje se mogu koristiti u tu svrhu. OLEDB je nasljednik ODBC-a.
Što je ODBC?
ODBC je sučelje za pristup sustavima za upravljanje bazama podataka (DBMS). ODBC razvio je SQL Access Group 1992. godine u vrijeme kad nije bilo standardnog medija za komunikaciju između baze podataka i aplikacije. Ne ovisi o specifičnom programskom jeziku ili sustavu baza podataka ili operativnom sustavu. Programeri mogu koristiti ODBC sučelje za pisanje aplikacija koje mogu tražiti podatke iz bilo koje baze podataka, bez obzira na okruženje u kojem se izvodi ili vrstu DBMS-a koji koristi..
Budući da ODBC pogonitelj djeluje kao prevoditelj između aplikacije i baze podataka, ODBC je u mogućnosti postići jezičnu i platformsku neovisnost. To znači da se aplikacija oslobađa tereta tereta poznavanja jezika određene baze podataka. Umjesto toga, on će znati i koristiti ODBS sintaksu, a vozač će prevesti upit u bazu podataka na jeziku koji može razumjeti. Tada se rezultati vraćaju u formatu koji aplikacija može razumjeti. ODBC softverski API može se koristiti s relacijskim i nerelacijskim sustavima baza podataka. Još jedna velika prednost postojanja ODBC-a kao univerzalnog srednjeg softvera između aplikacije i baze podataka jest taj što svaki put kad se specifikacije baze podataka promijene, softver nije potrebno ažurirati. Dovoljno je samo ažuriranje upravljačkog programa za ODBC.
Što je OLEDB?
OLEDB je podatkovni API razvijen od strane Microsofta. Omogućuje pristup podacima iz velikog broja izvora podataka. Provodi se korištenjem Microsoftovog COM-a (Component Object Mode). OLEDB se smatra nasljednikom ODBC-a i može rukovati izvorima podataka na mnogo višoj razini u odnosu na ODBC. U osnovi, OLEDB proširuje ODBC značajke na nerelacijske baze podataka (npr. Objektne baze podataka i proračunske tablice). To znači da se OLEDB može koristiti s bazama podataka koje ne koriste SQL. OLEDB je razvijen kao dio Microsoftovih komponenata pristupa podacima (MDAC).
Koja je razlika između ODBC i OLEDB?
Ako programer nije upoznat s COM-om, tada je ODBC bolja opcija. No, ODBC je dobar samo za relacijske baze podataka, dok je OLEDB pogodan i za relacijske i za ne-relacijske baze podataka. Ako baza podataka ne podržava OLE (ne-OLE okruženja), tada je ODBC najbolji izbor. Ako okruženje nije SQL, tada morate koristiti OLEDB (jer ODBC radi samo sa SQL-om). Slično tome, ako su potrebne interoperabilne komponente baze podataka, tada se treba koristiti OLEDB umjesto ODBC. No, za 16-bitne podatke pristup ODBC-u je jedina opcija (OLEDB ne podržava 16-bitnu). Konačno, OLEDB je najbolji izbor za povezivanje s više baza podataka odjednom (ODBC se može povezati samo s jednom bazom podataka).