Open Database Connectivity (ODBC) on rajapinta tietokoneiden sovellusten ja tietokantojen välillä. Tämä käyttöliittymä tarjoaa puskurikerroksen tietokannan ja sen käyttämiseen käytettävän ohjelmiston välille. Tämä tarkoittaa, että mikä tahansa ohjelmisto voi muodostaa yhteyden mihin tahansa tietokantaan alustasta tai menetelmästä riippumatta, kunhan molemmat järjestelmät käyttävät ODBC: tä. Pohjimmiltaan molemmat ohjelmat puhuvat omalla kielellään ja Open Database Connectivity -rutiinit kääntävät tiedot.
Microsoft® kehitti alkuperäisen Open Database Connectivity -järjestelmän vuonna 1992. Tämä järjestelmä toimi erittäin hyvin joissakin olosuhteissa, mutta ei toisissa. Vuonna 1995 Microsoft® julkaisi järjestelmän version 3, joka samaan aikaan otettiin käyttöön rakenteellisen kyselykielen (SQL) perusstandardina. Osana SQL -standardia käyttöliittymää käytettiin laajalti kaikenlaisiin eri tietokantatarkoituksiin.
Ennen Open Database Connectivityn käyttöönottoa tietokantaa käyttävät ohjelmat tarvitsivat koodattuja menetelmiä puhuakseen eri tyylisten tietokantojen kanssa. Ohjelmoijat uskoivat, että nämä järjestelmät tarvitsevat pääsyn kolmeen eri tyyppiseen tietokantaan; sitten järjestelmään ohjelmoitiin kolme eri komentoa kullekin toiminnolle. Tietokannoissa oli sama redundanssi; jokainen ohjelma vaati tietojen lähettämistä tietylle kartanolle. Jos jompikumpi näistä ohjelmista oli poissa käytöstä syntaksissa tai törmäsi tuntemattomaan järjestelmään, kommunikointi ei ollut mahdollista.
Kaikki tämä muuttui Open Database Connectivityn kehittämisen ja käyttöönoton myötä. Tämä toimii lähinnä kääntäjänä. Tietokannan ja sovellusten ohjelmoijat kirjoittavat käyttämänsä menetelmät ODBC: n käyttämään syntaksiin. Kun sovellus tarvitsee tietoja, se lähettää kyselyn ja ODBC kääntää syntaksin tietokannan käyttämiin menetelmiin. Tietokanta lähettää vastauksen takaisin, ja ODBC muuntaa sen takaisin sovelluksen edellyttämään syntaksiin.
Tämä prosessi toimii asennetun ohjainasetuksen kautta. Jokaisessa tietokannassa on tietty Open Database Connectivity -ohjain. Tämä ohjain tekee todellisen käännöksen tietokannan ja ulkomaailman välillä. Jos eritelmiin tehdyt muutokset tekevät kuljettajasta vanhentuneen, vain kuljettaja tarvitsee muutoksia; muu tietokanta voi jäädä muuttamatta. Tämä mahdollistaa käyttöliittymän päivitykset ilman paljon lisäkoodaustyötä.
Sovelluksissa on lähinnä Open Database Connectivity -ajurit. Nämä ohjaimet ovat osa sovelluksen ohjelmointia. Ne voidaan päivittää, kun ohjelma vastaanottaa korjauksia, mutta ne ovat erillään tavallisesta ODBC -järjestelmästä.
Todellinen viestintä tapahtuu näiden ohjainryhmien välillä. Ohjelman ohjaimet kääntävät tiedot ennen niiden lähettämistä. Tietokannan ohjaimet vastaanottavat pyynnön omalla kielellään, hakevat tiedot ja lähettävät sen edelleen ODBC -syntaksissa. Ohjelman ohjaimet ottavat tiedot takaisin ja kääntävät ne takaisin ohjelman kielelle. Tämä kaksikerroksinen järjestelmä luo rajapinnan, joka on lähes idioottivarma, koska järjestelmien todelliset suunnittelijat luovat omat rajapintansa.