ODBC va OLEDB
Odatda, dasturiy ilovalar ma'lum bir dasturlash tilida (masalan, Java, C va boshqalar) yoziladi, ma'lumotlar bazalari esa boshqa ma'lumotlar bazasiga xos tilda (masalan, SQL) so'rovlarni qabul qiladi. Shuning uchun, dasturiy ta'minot ilovasi ma'lumotlar bazasidagi ma'lumotlarga kirishi kerak bo'lganda, tillarni bir-biriga tarjima qila oladigan interfeys (ilova va ma'lumotlar bazasi) talab qilinadi. Aks holda, dasturchilar o'z ilovalariga ma'lumotlar bazasiga xos tillarni o'rganishlari va kiritishlari kerak. ODBC (Ochiq ma'lumotlar bazasi ulanishi) va OLEDB (ob'ektlarni bog'lash va joylashtirish, ma'lumotlar bazasi) bu aniq muammoni hal qiladigan ikkita interfeysdir. ODBC bu maqsadda ishlatilishi mumkin bo'lgan platforma, til va operatsion tizimdan mustaqil interfeysdir. OLEDB ODBC ning vorisi.
ODBC nima?
ODBC - bu ma'lumotlar bazasini boshqarish tizimlariga (DBMS) kirish uchun interfeys. ODBC 1992 yilda SQL Access Group tomonidan ishlab chiqilgan, o'sha paytda ma'lumotlar bazasi va ilova o'rtasida aloqa o'rnatish uchun standart vosita mavjud emas edi. Bu ma'lum bir dasturlash tiliga yoki ma'lumotlar bazasi tizimiga yoki operatsion tizimga bog'liq emas. Dasturchilar ODBC interfeysidan, u ishlayotgan muhitdan yoki foydalanayotgan ma'lumotlar bazasi turidan qat'i nazar, istalgan ma'lumotlar bazasidan ma'lumotlarni so'rashi mumkin bo'lgan ilovalarni yozish uchun foydalanishi mumkin.
ODBC drayveri dastur va ma'lumotlar bazasi o'rtasida tarjimon vazifasini o'taganligi sababli, ODBC til va platforma mustaqilligiga erisha oladi. Bu shuni anglatadiki, dastur ma'lumotlar bazasining o'ziga xos tilini bilish yukidan xalos bo'ladi. Buning o'rniga u faqat ODBS sintaksisini biladi va foydalanadi va haydovchi so'rovni ma'lumotlar bazasiga tushunadigan tilga tarjima qiladi. Keyin natijalar dastur tomonidan tushuniladigan formatda qaytariladi. ODBC dasturiy ta'minot API'si ham relyatsion, ham aloqador bo'lmagan ma'lumotlar bazasi tizimlarida ishlatilishi mumkin. ODBC ning dastur va ma'lumotlar bazasi o'rtasida universal vositachi bo'lishining yana bir muhim afzalligi shundaki, har safar ma'lumotlar bazasi spetsifikatsiyasi o'zgarganda, dasturiy ta'minotni yangilash kerak emas. Faqat ODBC drayverini yangilash kifoya.
OLEDB nima?
OLEDB - Microsoft tomonidan ishlab chiqilgan ma'lumotlar API. Bu ko'plab ma'lumotlar manbalaridan ma'lumotlarga kirish imkonini beradi. U Microsoft-ning COM (Component Object Mode) yordamida amalga oshiriladi. OLEDB ODBC ning vorisi hisoblanadi va u ODBC ga nisbatan ma'lumotlar manbalarini ancha yuqori darajada boshqara oladi. Aslida, OLEDB ODBC xususiyatlarini aloqador bo'lmagan ma'lumotlar bazalariga (masalan, ob'ekt ma'lumotlar bazalari va elektron jadvallar) kengaytiradi. Bu shuni anglatadiki, OLEDB SQL ishlatmaydigan ma'lumotlar bazalari bilan ishlatilishi mumkin. OLEDB Microsoft Data Access Components (MDAC) ning bir qismi sifatida ishlab chiqilgan.
ODBC va OLEDB o'rtasidagi farq nima?
Agar dasturchi MAQOMOTI bilan tanish boʻlmasa, ODBC eng yaxshi variant. Biroq, ODBC faqat relyatsion ma'lumotlar bazalari uchun yaxshi, OLEDB esa relyatsion va relyatsion bo'lmagan ma'lumotlar bazalari uchun mos keladi. Agar ma'lumotlar bazasi OLE (OLE bo'lmagan muhitlar) ni qo'llab-quvvatlamasa, ODBC eng yaxshi tanlovdir. Agar muhit SQL bo'lmasa, siz OLEDB dan foydalanishingiz kerak (chunki ODBC faqat SQL bilan ishlaydi). Xuddi shunday, agar birgalikda ishlaydigan ma'lumotlar bazasi komponentlari kerak bo'lsa, ODBC o'rniga OLEDB dan foydalanish kerak. Biroq, 16-bitli ma'lumotlar uchun ODBC-ga kirish yagona imkoniyatdir (OLEDB 16-bitni qo'llab-quvvatlamaydi). Va nihoyat, OLEDB bir vaqtning o'zida bir nechta ma'lumotlar bazalariga ulanish uchun eng yaxshi tanlovdir (ODBC bir vaqtning o'zida faqat bitta ma'lumotlar bazasiga ulanishi mumkin).