Open Database Connectivity (ODBC) è un’interfaccia tra applicazioni informatiche e database. Questa interfaccia fornisce un livello di buffer tra il database e il software utilizzato per accedervi. Ciò significa che qualsiasi software può connettersi a qualsiasi database indipendentemente dalla piattaforma o dal metodo, purché entrambi i sistemi utilizzino ODBC. In sostanza, i due programmi parlano nelle loro lingue e le routine di Open Database Connectivity traducono le informazioni.
Il sistema Open Database Connectivity originale è stato sviluppato da Microsoft® nel 1992. Questo sistema ha funzionato molto bene in alcune circostanze, ma non in altre. Nel 1995, Microsoft® ha rilasciato la versione 3 del sistema, che ha coinciso con la sua adozione come standard di base per il linguaggio di query strutturato (SQL). Come parte dello standard SQL, l’interfaccia è diventata ampiamente utilizzata per tutti i tipi di scopi di database diversi.
Prima dell’adozione di Open Database Connectivity, i programmi che utilizzavano database avevano bisogno di metodi codificati per comunicare con diversi stili di database. I programmatori ritenevano che questi sistemi avrebbero avuto bisogno dell’accesso a tre diversi tipi di database; poi, nel sistema sono stati programmati tre diversi comandi per ogni funzione. I database avevano la stessa ridondanza; ogni programma richiedeva che le informazioni venissero inviate in un maniero specifico. Se uno di questi programmi era disattivato nella sintassi o incontrava un sistema sconosciuto, non era possibile alcuna comunicazione.
Tutto questo è cambiato con lo sviluppo e l’implementazione di Open Database Connectivity. Questo funziona essenzialmente come traduttore. I programmatori del database e delle applicazioni scrivono i metodi che utilizzano nella sintassi utilizzata da ODBC. Quando l’applicazione richiede informazioni, invia la query e ODBC traduce la sua sintassi nei metodi utilizzati dal database. Il database restituisce la risposta e ODBC la traduce nella sintassi richiesta dall’applicazione.
Questo processo funziona tramite un set di driver installato. Ad ogni database è associato uno specifico driver Open Database Connectivity. Questo driver esegue la traduzione effettiva tra il database e il mondo esterno. Se le modifiche alle specifiche rendono il driver obsoleto, solo il driver deve essere modificato; il resto del database può rimanere inalterato. Ciò consente aggiornamenti all’interfaccia senza molto lavoro di codifica aggiuntivo.
Le applicazioni hanno essenzialmente driver Open Database Connectivity integrati. Questi driver fanno parte della programmazione dell’applicazione. Possono essere aggiornati quando il programma riceve le patch, ma sono separati dal sistema ODBC standard.
La vera comunicazione avviene tra questi set di driver. I driver del programma traducono le informazioni prima che vengano effettivamente inviate. I driver del database ricevono la richiesta nella propria lingua, ottengono le informazioni e le inviano, sempre nella sintassi ODBC. I driver del programma riprendono le informazioni e le traducono nella lingua del programma. Questo sistema a due livelli crea un’interfaccia che è quasi infallibile, poiché gli attuali progettisti dei sistemi creano le proprie interfacce.