Mis on avatud andmebaasi ühenduvus?

Open Database Connectivity (ODBC) on liides arvutirakenduste ja andmebaaside vahel. See liides pakub puhverkihi andmebaasi ja sellele juurdepääsuks kasutatava tarkvara vahele. See tähendab, et mis tahes tarkvara võib platvormist või meetodist olenemata ühenduda mis tahes andmebaasiga seni, kuni mõlemad süsteemid kasutavad ODBC-d. Põhimõtteliselt räägivad need kaks programmi oma keeles ja avatud andmebaasi ühenduvuse rutiinid tõlgivad teabe.

Algse Open Database Connectivity süsteemi töötas välja Microsoft® 1992. aastal. See süsteem töötas mõnel juhul väga hästi, kuid mõnel juhul mitte. 1995. aastal andis Microsoft® välja süsteemi 3. versiooni, mis langes kokku sellega, et see võeti kasutusele struktureeritud päringukeele (SQL) baasstandardina. SQL-standardi osana hakati liidest laialdaselt kasutama kõikvõimalike erinevate andmebaasi eesmärkide jaoks.

Enne avatud andmebaasi ühenduvuse kasutuselevõttu vajasid andmebaasi kasutavad programmid kodeeritud meetodeid erinevat tüüpi andmebaasidega rääkimiseks. Programmeerijad uskusid, et need süsteemid vajavad juurdepääsu kolmele erinevat tüüpi andmebaasile; seejärel programmeeriti süsteemi iga funktsiooni jaoks kolm erinevat käsku. Andmebaasidel oli samasugune liiasus; iga saade nõudis info väljasaatmist konkreetses mõisas. Kui mõni neist programmidest oli süntaksis välja lülitatud või sattus tundmatu süsteemi, ei olnud side võimalik.

See kõik muutus avatud andmebaasi ühenduvuse arendamise ja rakendamisega. See toimib sisuliselt tõlkijana. Andmebaasi ja rakenduste programmeerijad kirjutavad kasutatavad meetodid üles ODBC kasutatavasse süntaksisse. Kui rakendus nõuab teavet, saadab see päringu ja ODBC tõlgib selle süntaksi andmebaasi kasutatavateks meetoditeks. Andmebaas saadab vastuse tagasi ja ODBC tõlgib selle tagasi rakenduse nõutavasse süntaksisse.

See protsess toimib installitud draiverite komplekti kaudu. Igal andmebaasil on sellega seotud konkreetne avatud andmebaasi ühenduvuse draiver. See draiver teeb tegeliku tõlke andmebaasi ja välismaailma vahel. Kui spetsifikatsiooni muudatused muudavad draiveri aegunuks, tuleb muuta ainult draiver; ülejäänud andmebaas võib jääda muutmata. See võimaldab liidest värskendada ilma täiendava kodeerimistööta.

Rakendustel on sisuliselt sisseehitatud avatud andmebaasi ühenduvuse draiverid. Need draiverid on osa rakenduse programmeerimisest. Neid võidakse värskendada, kui programm saab plaastreid, kuid need on standardsest ODBC-süsteemist eraldi.
Tõeline suhtlus toimub nende draiverikomplektide vahel. Programmi draiverid tõlgivad teabe enne selle tegelikku saatmist. Andmebaasi draiverid võtavad päringu vastu oma keeles, saavad teabe ja saadavad selle välja, ikka ODBC süntaksis. Programmi draiverid võtavad teabe tagasi ja tõlgivad selle tagasi programmi keelde. See kahekihiline süsteem loob liidese, mis on peaaegu lollikindel, kuna süsteemide tegelikud disainerid loovad ise liidesed.