Open Database Connectivity (disingkat menjadi ODBC) adalah sebuah standar terbuka untuk konektivitas antar mesin basis data. Standar ini menyediakan API yang dapat digunakan untuk menjalankan dan mengoneksikan sebuah aplikasi dengan sebuah sistem manajemen basis data (SMBD). Para desainer ODBC membuatnya dengan tujuan agar ODBC terbebas dari penggunaan bahasa pemrograman tertentu, sistem manajemen basis data tertentu, dan sistem operasi tertentu.
Spesifikasi ODBC menawarkan API prosedural untuk menggunakan query dengan bahasa SQL untuk mengakses sebuah basis data. Sebuah implementasi ODBC, akan menyediakan satu aplikasi atau lebih, pustaka inti ODBC, dan juga “driver basis data”. Pustaka inti ODBC, yang bersifat independen terhadap aplikasi dan juga DBMS, bertindak sebagai interpreter antara aplikasi dan juga driver basis data, sementara driver basis data mengandung detail-detail mengenai SMBD tertentu. Sehingga, dengan cara seperti ini, para programmer dapat menulis aplikasi basis data, tanpa harus memahami sistem manajemen basis data tertentu, mengingat semuanya telah ditangani oleh ODBC. Akan tetapi, para pembuat driver basis data ODBC hanya harus mengetahui bagaimana caranya memasukkan driver basis data ke dalam pustaka inti ODBC. Dengan begitu, ODBC ini dapat disebut sebagai sistem yang modular.
ODBC memiliki beberapa komponen utama, yakni sebagai berikut:
* ODBC API: sekumpulan panggilan fungsi, kode-kode kesalahan dan sintaksis SQL yang mendefinisikan bagaimana data dalam sebuah DBMS diakses.
* Driver basis data ODBC: driver (yang berupa dynamic link library) yang mampu memproses panggilan fungsi ODBC untuk sebuah DBMStertentu.
* ODBC Driver Manager: yang bertugas untuk memuat driver basis data ODBC yang dibutuhkan oleh aplikasi.
Pengguna sistem operasi Windows dapat mengonfigurasikan ODBC dengan menggunakan utilitas ODBC yang terdapat di dalam Control Panel. Utilitas ini mengizinkan mereka untuk mendefinisikan DSN (Data Source Name) untuk basis data yang hendak diakses dan juga driver yang digunakan untuk mengakses basis data tersebut. Untuk mengonfigurasikan ODBC dengan utilitas ini, mereka dapat mengasosiasikan sebuah DSN dengan sebuah driver ODBC, yang mengizinkan aplikasi untuk dapat berinterakse dengan sebuah basis data yang disimpan baik secara lokal di dalam mesin yang sama maupun di dalam server jaringan.
ODBC memungkinkan aplikasi apapun untuk mengeluarkan query atau perintah ke sistem manajemen database. Dengan demikian aplikasi tidak perlu menjadi vendor tergantung aplikasi database tunggal.
ODBC digunakan setiap kali sebuah aplikasi membutuhkan kemerdekaan database serta data yang akan diakses secara bersamaan dari database yang berbeda. Pelaksana permintaan melalui driver ODBC lebih lambat dibandingkan dengan metoda pribumi mengeksekusi query mentah di database SQL screen editor. Namun ODBC adalah cara terbaik dan paling efisien untuk menyambung ke database yang berbeda secara bersamaan.