Diferența dintre OLEDB și ODBC

ODBC vs OLEDB

Dacă știți ce sunt, probabil sunteți un dezvoltator. Dacă nu știți ce sunt, dar doriți să știți - probabil că sunteți un viitor dezvoltator.

Din cauza naturii tehnice a acestei comparații, am inclus un glosar de termeni la sfârșitul articolului. Dacă sunteți nou în acest gen de lucruri, poate doriți să aruncați o privire la asta mai întâi.

Să aruncăm o privire la acești termeni, la ce sunt folosiți și pe care o recomand.

Definirea termenilor

ODBC Driver Architecture

ODBC este scurt pentru conectarea la Open Database. Este un standard de interfață, conceput pentru a comunica între diferite aplicații și sisteme de operare (OS).

Cum ar fi, de exemplu, dacă ați folosit un program pentru Linux, dar ați vrut să lucrez și în (OS). Răspunsul dvs. ar fi un API ca ODBC.

În zilele trecute, programele au fost redate în întregime pentru sisteme de operare noi sau diferite. Procesul a fost ineficient.

ODBC a apărut în 1992 pentru a rezolva această problemă.

ODBC a fost creat inițial pentru Limbajul Structurat de Interogare (SQL). De atunci, sa extins pentru a gestiona mai multe limbi de programare.

OLE BD este scurt pentru Object Linking and Embedding Database. Acesta este un grup de API conceput pentru a oferi acces la datele aplicațiilor în diferite formate de fișiere. Aceasta a inclus capacitatea SQL (cum ar fi ODBC) și multe alte limbi.

OLE BD a fost setat să reușească ODBC, dar lucrurile s-au schimbat ...

ODBC vs. OLEDB

ODBC a fost inițial focalizată pe SQL și, dacă utilizați SQL, este logic să mergeți cu ODBC. Alegerea evidentă a fost OLEDB. Dar, după cum veți afla mai târziu în articol, ultima versiune SQL pentru a susține OLEDB lansată în 2012. Și se elimină rapid.

Această schimbare a strategiei de către Microsoft a luat o pază. Mulți utilizatori încăpățânați s-au agățat de ODBC atât de mult, deci mișcarea a avut sens. De asemenea, a existat și faptul că ODBC se extindea.

În ceea ce privește diferența dintre aceste două, este foarte greu de spus fără a fi foarte tehnic.

În principiu, acestea sunt API-uri diferite pentru diferite surse de date.

O opinie este că ODBC este mai specific și până la punctul în care OLEDB este prea generic și prea complicat.

Suport curent

SQL a lansat 2012 a fost ultima pentru a sprijini OLEDB. Acest lucru scoate în evidență votul în favoarea ODBC.

ODBC și-a extins compatibilitatea cu utilizarea driverelor, ceea ce reprezintă un factor major de influență în schimbarea strategiei de către Microsoft.

Dezvoltatorii trebuie să adapteze

Versiunea SQL menționată mai sus (denali) a venit cu șapte ani de suport pentru OLEDB. Aceasta înseamnă că, pe măsură ce scriu acest lucru, dezvoltatorii au la dispoziție doar doi ani pentru a se adapta.

Toată lumea înțelege că poate fi greu să se adapteze, dar utilizatorii OLEDB nu vor avea de ales foarte curând.

Diferențele dintre ODBC și OLEDB

Urcă-te cu mine, e pe cale să devii foarte tehnică. Pentru ușurința citirii am conținut informațiile într-un tabel.

Acest tabel se bazează pe informațiile furnizate de o lucrare tehnică albă de la ftp.sas.com

ODBC OLEDB
Inițial conceput pentru baze de date relaționale. (din moment ce sa schimbat) Proiectat inițial pentru baze de date non-relaționale și relaționale.
Suport permanent pentru SQL Suportul SQL void 2019
Bazată pe componente Bazat pe procedurale
Mai dificil de implementat Ușor de implementat

Asta aproape că o însumează. Sper că aveți o mai bună înțelegere a diferenței dintre ODBC și OLEDB acum. Dacă nu, am oferit o lectură suplimentară mai jos, precum și o legătură cu documentul tehnic menționat mai sus.

Dacă aveți experiență în utilizarea acestor două API-uri, de ce să nu ne anunțați în comentarii? Am greșit ceva? Există ceva ce puteai adăuga pentru primii de acolo?

Ne-ar plăcea să vă spunem în comentariile dvs..

Glosar

ODBC: Conectarea bazei de date deschise

OLE DB: Legarea obiectelor și integrarea bazei de date

OS: Sistem de operare (cum ar fi ferestrele)

API: interfață de programare a aplicațiilor

Baze de date relaționale: Un set de elemente de date sortate în tabele. Elementele de date pot fi accesate și reasamblate fără reorganizarea tabelelor bazei de date.

Baza de date non-relațională: Nu respectă standardul relațional. De asemenea, cunoscut sub numele de baza de date NoSQL.

Citirea în continuare

Legătură la (depășită - vezi mai sus, OLEDB pierde funcționalitatea SQL) hârtie albă: http://ftp.sas.com/techsup/download/v8papers/odbcdb.pdf

Baza de date relațională vs. non-relațională: https://www.mongodb.com/scale/relational-vs-non-relational-database

Opiniile utilizatorilor despre ODBC vs. OLEDB: https://community.qlik.com/thread/106540