Rozdiel medzi OLEDB a ODBC

ODBC vs OLEDB

Ak viete, aké sú, pravdepodobne ste vývojár. Ak neviete, čo sú, ale chcete vedieť - pravdepodobne ste budúcim vývojárom.

Z dôvodu technickej povahy tohto porovnania som na konci článku zahrnul slovník pojmov. Ak ste v tejto veci nováčikom, mali by ste sa na to najprv pozrieť.

Pozrime sa na tieto výrazy, na čo sa používajú a na ktoré odporúčam.

Definovanie podmienok

Architektúra ovládačov ODBC

ODBC je skratka pre pripojenie k otvorenej databáze. Je to štandard rozhrania určený na komunikáciu medzi rôznymi aplikáciami a operačnými systémami (OS).

Napríklad, ak ste použili program napísaný pre Linux, ale chceli ste, aby som pracoval aj v (OS). Vaša odpoveď by bola API ako ODBC.

Kedysi boli programy prepisované úplne pre nový alebo iný operačný systém. Tento proces bol neefektívny.

ODBC sa objavil v roku 1992 na vyriešenie tohto problému.

ODBC bol pôvodne vytvorený pre jazyk Structured Query Language (SQL). Odvtedy sa rozšírila o viac programovacích jazykov.

OLE BD je skratka pre databázu na prepájanie a vkladanie objektov. Toto je skupina rozhraní API navrhnutá na poskytovanie prístupu k údajom aplikácií v rôznych formátoch súborov. To zahŕňalo schopnosť jazyka SQL (napríklad ODBC) a mnoho ďalších jazykov.

OLE BD bol nastavený na úspech ODBC, ale veci sa zmenili ...

ODBC vs. OLEDB

ODBC sa spočiatku zameriavala na SQL a ak používate SQL, má zmysel ísť s ODBC. Zjavnou voľbou bol OLEDB. Ale ako sa dozviete neskôr v článku, posledné vydanie SQL na podporu OLEDB sa začalo v roku 2012. A to sa postupne vyraďuje.

Táto zmena v stratégii spoločnosti Microsoft nezabezpečila. Mnoho tvrdohlavých používateľov sa tak dlho držalo ODBC, takže tento krok mal zmysel. Tiež tu bola skutočnosť, že ODBC sa rozširoval.

Pokiaľ ide o rozdiel medzi týmito dvoma, je ťažké povedať, bez toho, aby sme boli veľmi technický.

V jadre sú to rôzne API pre rôzne zdroje údajov.

Jeden názor je, že ODBC je špecifickejší a do tej miery, že OLEDB je príliš všeobecný a príliš komplikovaný.

Aktuálna podpora

Spustenie SQL v roku 2012 bolo posledné, ktoré podporovalo OLEDB. Tým sa skresľuje hlas v prospech ODBC.

ODBC rozšírila svoju kompatibilitu s používaním ovládačov, čo je hlavným hnacím faktorom pri zmene stratégie spoločnosťou Microsoft.

Vývojári sa musia prispôsobiť

Vyššie uvedené vydanie SQL (denali) prišlo so siedmimi rokmi podpory pre OLEDB. To znamená, že keď píšem, vývojári majú na prispôsobenie sa iba dva roky.

Každý chápe, že je ťažké sa prispôsobiť, ale používatelia OLEDB nebudú mať čoskoro na výber.

Rozdiely medzi ODBC a OLEDB

Zostaň so mnou, chystá sa to veľmi technické. Pre ľahšiu čitateľnosť som tieto informácie obsahoval v tabuľke.

Táto tabuľka je založená na informáciách technickým bielym papierom z ftp.sas.com

ODBC OLEDB
Pôvodne určený pre relačné databázy. (od zmeny) Pôvodne určený pre nerelačné a relačné databázy.
Priebežná podpora pre SQL Podpora SQL neplatná 2019
Component-based procesné báze
Ťažšie nasadiť Ľahšie nasadenie

To len asi zhrnie. Dúfam, že teraz lepšie rozumiete rozdielu medzi ODBC a OLEDB. Ak tak neurobíte, poskytol som ďalšie čítanie nižšie, ako aj odkaz na vyššie uvedený technický dokument.

Ak máte skúsenosti s používaním týchto dvoch rozhraní API, prečo by ste nás o tom nemali informovať? Dostali sme niečo zle? Existuje niečo, čo by ste mohli pridať k nováčikom?

V komentároch by sme vás radi počuli.

glosár

ODBC: Pripojenie k otvorenej databáze

OLE DB: Prepojenie a vkladanie databázy

OS: Operačný systém (napríklad Windows)

API: Application Programming Interface

Relačná databáza: Sada dátových položiek zoradených do tabuliek. Prístup k údajovým položkám a ich opätovné zostavenie je možný bez reorganizácie databázových tabuliek.

Nerelačná databáza: Nesleduje relačný štandard. Známy tiež ako databáza NoSQL.

Ďalšie čítanie

Odkaz na (zastaralý - pozri vyššie, OLEDB stráca funkčnosť SQL) Dokument white paper: http://ftp.sas.com/techsup/download/v8papers/odbcdb.pdf

Relačná vs. nerelačná databáza: https://www.mongodb.com/scale/relational-vs-non-relational-database

Názory používateľov na ODBC verzus OLEDB: https://community.qlik.com/thread/106540