Java DataBase Connectivity oder JDBC ist eine Schnittstelle für die Programmiersprache Java, während Open DataBase Connectivity oder ODBC eine sprachunabhängige Schnittstelle ist. JDBC wurde von einer Tochtergesellschaft von Sun Microsystems namens JavaSoft entwickelt, während ODBC von der SQL Access Group entwickelt wurde.
JDBC und ODBC basieren auf dem X/Open SQL-Schnittstellenstandard auf Aufrufebene. Sie stellen eine Anwendungsprogrammschnittstelle (API) bereit, die dem gleichen Programm den Zugriff auf verschiedene Datenbanken unabhängig vom Eigentum des Anbieters ermöglicht. Unter Verwendung von standardmäßigen Structured Query Language- oder SQL-Anweisungen können Datenbanken abgefragt werden, um Daten entweder zu speichern, abzurufen, zu löschen oder zu ändern.
JDBC wird häufig für objektorientierte Datenbanken verwendet, während ODBC für den Zugriff auf Datenbankverwaltungssysteme oder DBMS verwendet wird. JDBC kann nur von in Java geschriebenen Anwendungen verwendet werden, während ODBC nicht von der Programmiersprache, dem Betriebssystem und der Plattform des Programms abhängt, das versucht, auf eine Datenbank zuzugreifen. Diese Unabhängigkeit wird vom ODBC erreicht, indem er über einen Treibermanager als Übersetzer zwischen Datenbank und Anwendung agiert. JDBC kann nur mithilfe einer JDBC-zu-ODBC-Brücke eine Verbindung zu ODBC-kompatiblen Datenbanken herstellen.
Einige JDBC-Befürworter meinen, dass JDBC im Vergleich zu ODBC einfacher zu erlernen ist. Ein weiterer Vorteil von JDBC gegenüber ODBC ist die schnellere Implementierung in Nicht-Windows-Anwendungen.