Hva er åpen databasetilkobling?
Open Database Connectivity (ODBC) er et grensesnitt mellom dataprogrammer og databaser. Dette grensesnittet gir et buffersjikt mellom databasen og programvaren som brukes for å få tilgang til den. Dette betyr at all programvare kan koble seg til hvilken som helst database uavhengig av plattform eller metode så lenge begge systemene bruker ODBC. I hovedsak snakker de to programmene på sine egne språk, og Open Database Connectivity-rutinene oversetter informasjonen.
Det originale Open Database Connectivity-systemet ble utviklet av Microsoft® i 1992. Dette systemet fungerte veldig bra under noen omstendigheter, men ikke i andre. I 1995 ga Microsoft® ut versjon 3 av systemet, som falt sammen med at det ble vedtatt som en basestandard for strukturert spørrespråk (SQL). Som en del av SQL-standarden ble grensesnittet mye brukt for alle slags databaseformål.
Før vedtakelsen av Open Database Connectivity, databasebrukende programmer trengte kodede metoder for å snakke med forskjellige stiler av databaser. Programmerere mente disse systemene ville trenge tilgang til tre forskjellige typer databaser; deretter ble tre forskjellige kommandoer for hver funksjon programmert inn i systemet. Databaser hadde samme overflødighet; hvert program krevde at informasjonen skal sendes ut i en bestemt herregård. Hvis noen av disse programmene var syntaks eller hadde et ukjent system, var ingen kommunikasjon mulig.
Dette endret seg med utviklingen og implementeringen av Open Database Connectivity. Dette fungerer egentlig som en oversetter. Programmørene av databasen og applikasjonene skriver opp metodene de bruker i syntaks brukt av ODBC. Når applikasjonen krever informasjon, sender den spørringen, og ODBC oversetter syntaks til metodene som brukes av databasen. Databasen sender svaret tilbake, og ODBC oversetter det tilbake til syntaks som kreves av applikasjonen.
Denne prosessen fungerer via et installert sett med drivere. Hver database har en spesifikk Open Database Connectivity-driver som er tilknyttet. Denne driveren gjør den faktiske oversettelsen mellom databasen og omverdenen. Hvis endringer i spesifikasjonen gjør driveren foreldet, er det bare driveren som trenger å skifte; resten av databasen kan forbli uendret. Dette tillater oppdateringer til grensesnittet uten mye ekstra kodearbeid.
Programmer har egentlig Open Database Connectivity-drivere innebygd i dem. Disse driverne er en del av programmeringen for applikasjonen. De kan oppdateres ettersom programmet mottar oppdateringer, men de er atskilt fra standard ODBC-systemet.
Den virkelige kommunikasjonen skjer mellom disse sjåførene. Programmets drivere oversetter informasjonen før den faktisk sendes. Databasens drivere mottar forespørselen på sitt eget språk, får informasjonen og sender den ut, fremdeles i ODBC-syntaks. Programmets drivere tar informasjonen tilbake og oversetter den tilbake til programmets språk. Dette to-lagssystemet skaper et grensesnitt som er nesten idiotsikkert, ettersom de faktiske designerne av systemene lager sine egne grensesnitt.