ODBC vs OLEDB
Paprastai programinės įrangos programos yra parašytos tam tikra programavimo kalba (pvz., „Java“, C # ir kt.), Tuo tarpu duomenų bazės priima užklausas kita duomenų bazės kalba (pvz., SQL). Todėl, kai programinei programai reikia pasiekti duomenų bazės duomenis, reikalinga sąsaja, galinti versti kalbas viena į kitą (taikomoji programa ir duomenų bazė). Kitu atveju programų programuotojai turi išmokti ir į savo programas įtraukti specifines duomenų bazių kalbas. ODBC (atviras duomenų bazių sujungimas) ir OLEDB (objektų susiejimas ir įdėjimas, duomenų bazė) yra dvi sąsajos, kurios išsprendžia šią specifinę problemą. ODBC yra nuo platformos, kalbos ir operacinės sistemos nepriklausoma sąsaja, kuri gali būti naudojama šiam tikslui. OLEDB yra ODBC įpėdinis.
Kas yra ODBC?
ODBC yra prieiga prie duomenų bazių valdymo sistemų (DBVS). ODBC sukūrė SQL Access Group 1992 m., Tuo metu nebuvo standartinės terpės ryšiui tarp duomenų bazės ir programos. Tai nepriklauso nuo konkrečios programavimo kalbos, duomenų bazės ar operacinės sistemos. Programuotojai gali naudoti ODBC sąsają, norėdami parašyti programas, kurios gali užklausti duomenis iš bet kurios duomenų bazės, nepriklausomai nuo aplinkos, kurioje ji veikia, ar naudojamo DBVS tipo..
Kadangi ODBC tvarkyklė veikia kaip vertėjas tarp programos ir duomenų bazės, ODBC gali pasiekti kalbos ir platformos nepriklausomumą. Tai reiškia, kad programa atleidžiama nuo duomenų bazės kalbos žinojimo naštos. Vietoj to jis žinos ir naudos tik ODBS sintaksę, o tvarkyklė išvers užklausą į duomenų bazę jai suprantama kalba. Tada rezultatai grąžinami programa suprantamu formatu. ODBC programinės įrangos API gali būti naudojama tiek su reliacinėmis, tiek su nesusijusiomis duomenų bazių sistemomis. Kitas svarbus ODBC kaip universalios tarpinės programos tarp programos ir duomenų bazės pranašumas yra tas, kad kiekvieną kartą keičiantis duomenų bazės specifikacijai, programinės įrangos nereikia atnaujinti. Pakanka tik atnaujinti ODBC tvarkyklę.
Kas yra OLEDB?
OLEDB yra duomenų API, kurią sukūrė „Microsoft“. Tai leidžia prieiti prie duomenų iš daugybės duomenų šaltinių. Jis įgyvendinamas naudojant „Microsoft“ COM (Component Object Mode). OLEDB yra laikomas ODBC įpėdiniu ir gali valdyti duomenų šaltinius daug aukštesniu lygiu, palyginti su ODBC. Iš esmės „OLEDB“ praplečia ODBC ypatybes ir nesusijusioms duomenų bazėms (pvz., Objektų duomenų bazėms ir skaičiuoklėms). Tai reiškia, kad OLEDB galima naudoti su duomenų bazėmis, kurios nenaudoja SQL. OLEDB buvo sukurtas kaip „Microsoft Data Access Components“ (MDAC) dalis.
Kuo skiriasi ODBC ir OLEDB?
Jei programuotojas nepažįsta COM, tada geresnis pasirinkimas yra ODBC. Tačiau ODBC yra tinkamas tik reliacinėms duomenų bazėms, o OLEDB yra tinkamas tiek reliacinėms, tiek nesusijusioms duomenų bazėms. Jei duomenų bazė nepalaiko OLE (ne OLE aplinkos), geriausias pasirinkimas yra ODBC. Jei aplinka nėra SQL, tuomet turite naudoti OLEDB (nes ODBC veikia tik su SQL). Panašiai, jei reikalingi sąveikūs duomenų bazės komponentai, tada vietoj ODBC reikia naudoti OLEDB. Tačiau 16 bitų duomenų prieiga prie ODBC yra vienintelė galimybė (OLEDB nepalaiko 16 bitų). Galiausiai, OLEDB yra geriausias pasirinkimas norint prisijungti prie kelių duomenų bazių vienu metu (ODBC gali prisijungti tik prie vienos duomenų bazės vienu metu).