Java DataBase Connectivity lub JDBC to interfejs dla języka programowania Java, natomiast Open DataBase Connectivity lub ODBC to interfejs niezależny od języka. JDBC został opracowany przez spółkę zależną Sun Microsystems o nazwie JavaSoft, natomiast ODBC został zaprojektowany przez SQL Access Group.
JDBC i ODBC są oparte na standardzie interfejsu wywołań X /Open SQL. Udostępniają interfejs aplikacji lub interfejs API, który umożliwia temu samemu programowi dostęp do różnych baz danych bez względu na własność dostawcy. Używając standardowych instrukcji Structured Query Language lub SQL, bazy danych mogą być wyszukiwane w celu przechowywania, pobierania, usuwania lub modyfikowania danych.
JDBC jest powszechnie używany w obiektowych bazach danych, natomiast ODBC jest używany do uzyskiwania dostępu do systemów zarządzania bazami danych (DBMS). JDBC mogą być używane tylko przez aplikacje napisane w Javie, natomiast ODBC nie zależy od języka programowania, systemu operacyjnego i platformy programu próbującego uzyskać dostęp do bazy danych. Ta niezależność jest uzyskiwana przez ODBC, działając jako tłumacz między bazą danych a aplikacją za pośrednictwem menedżera sterowników. JDBC może łączyć się z bazami danych zgodnymi z ODBC przy użyciu mostka JDBC-ODBC.
Niektórzy zwolennicy JDBC sugerują, że JDBC jest łatwiejszy do nauczenia niż ODBC. Kolejną zaletą JDBC w porównaniu z ODBC jest szybsza implementacja w aplikacjach innych niż Windows.