ODBC vs ADO
Softvérové aplikácie sa zvyčajne píšu v špecifickom programovacom jazyku (napríklad Java, C #, atď.), Zatiaľ čo databázy akceptujú dotazy v inom jazyku špecifickom pre databázu (napríklad SQL). Preto, keď softvérová aplikácia potrebuje prístup k údajom v databáze, je potrebné rozhranie, ktoré dokáže prekladať jazyky navzájom (aplikácia a databáza). V opačnom prípade sa musia programátori aplikácií naučiť a začleniť do svojich aplikácií jazyky špecifické pre databázu. ODBC (Open Database Connectivity) a OLE DB (Object Linking and Embedding, Database) sú dve rozhrania, ktoré riešia tento špecifický problém. ODBC je rozhranie nezávislé od platformy, jazyka a operačného systému, ktoré je možné na tento účel použiť. OLE DB je nástupcom ODBC. ADO je obal pre OLE DB.
Čo je ODBC?
ODBC je rozhranie pre prístup k systémom správy databáz (DBMS). ODBC bol vyvinutý spoločnosťou SQL Access Group v roku 1992 v čase, keď neexistovalo štandardné médium na komunikáciu medzi databázou a aplikáciou. Nezávisí od konkrétneho programovacieho jazyka alebo databázového systému alebo operačného systému. Programátori môžu používať rozhranie ODBC na písanie aplikácií, ktoré môžu vyhľadávať údaje z ľubovoľnej databázy, bez ohľadu na prostredie, na ktorom je spustený alebo na typ DBMS, ktorý používa..
Pretože ovládač ODBC funguje ako prekladateľ medzi aplikáciou a databázou, ODBC je schopná dosiahnuť nezávislosť jazyka a platformy. To znamená, že aplikácia je zbavená bremena znalosť jazyka špecifického pre databázu. Namiesto toho bude poznať a používať iba syntax ODBS a ovládač preloží dotaz do databázy v jazyku, ktorému rozumie. Potom sa výsledky vrátia vo formáte, ktorý je zrozumiteľný aplikácii. Softvérové rozhranie ODBC API sa môže používať s relačnými aj nerelačnými databázovými systémami. Ďalšou veľkou výhodou použitia ODBC ako univerzálneho middleware medzi aplikáciou a databázou je to, že zakaždým, keď sa zmení špecifikácia databázy, softvér nemusí byť aktualizovaný. Postačuje iba aktualizácia ovládača ODBC.
Čo je ADO?
ADO je zbierka objektov COM (Component Object Mode), ktoré slúžia ako rozhranie pre prístup k údajom v zdrojoch údajov. Spoločnosť ADO bola vyvinutá v roku 1996 spoločnosťou Microsoft ako súčasť komponentov Microsoft Data Access Components (MDAC). ADO tvorí vrstvu middleware medzi aplikáciami napísanými v niektorých programovacích jazykoch a OLE DB (dátové API vyvinuté spoločnosťou Microsoft a nástupcami ODBC). Programátori môžu používať ADO na prístup k údajom bez znalosti základných implementačných podrobností databázy. Aj keď nemusíte poznať žiadne SQL, aby ste mohli používať ADO, určite môžete pomocou neho vykonávať príkazy SQL.
Aký je rozdiel medzi ODBC a ADO?
ODBC je otvorené rozhranie, ktoré môže použiť akákoľvek aplikácia na komunikáciu s akýmkoľvek databázovým systémom, zatiaľ čo ADO je wrapper okolo OLE DB (ktorý je nástupcom ODBC). Ak databáza nepodporuje OLE (prostredia iné ako OLE), ODBC je najlepšou voľbou. Ak prostredie nie je SQL, musíte použiť ADO (pretože ODBC pracuje iba s SQL). Ak sa vyžadujú interoperabilné komponenty databázy, potom sa namiesto ODBC musí použiť ADO. Avšak pre 16-bitové dáta prístup ODBC je jedinou možnosťou (ADO nepodporuje 16-bitové). Nakoniec je ADO tou najlepšou voľbou pre pripojenie k viacerým databázam naraz (ODBC sa môže pripojiť naraz iba k jednej databáze).