JDBC: Java Database Connectivity (JDBC) provides Java developers with a
standard API (application Programming Interfaces) that is used to access
databases regardless of the driver and database product. To use JDBC you'll
need at least JDK 1.1 a database and a JDBC driver. There are several
characteristics of JDBC:ODBC : ODBC is the acronym for Open DataBase
Connectivity a Microsoft Universal Data Access standard that started life as
the Windows implementation of the X/Open SQL Call Level Interface specification.
ODBC Driver Manager - an application binds to this generic library which is
responsible for loading the requested ODBC Driver.
ODBC Driver - dynamically loaded by the ODBC Driver manager for making
connection to target Database.
Difference b/w them is
1.ODBC is for Microsoft and JDBC is for java applications.
2.ODBC can't be directly used with Java because it uses a C interface.
3.ODBC makes use of pointers which have been removed totally from java.
4.ODBC mixes simple and advanced features together and has complex options for
simple queries But JDBC is designed to keep things simple while allowing
advanced capabilities when required.
5.ODBC requires manual installation of the ODBC driver manager and driver on all
client machines. JDBC drivers are written in java and JDBC code is automatically
installable secure and portable on all platforms.
6. JDBC API is a natural Java Interface and is built on ODBC. JDBC retains some
of the basic feature of ODBC
You can use Squirrel SQL client available here to connect to databases via JDBC, it works with Teradata as well.