br>一、概述:
  JDBC是执行SQL语句的Java API。其实,JDBC本身是一个产品的商标名。相对与ODBC(Open Database Connectivity开放数据库连接),也可以把JDBC看作"Java Database Connectivity(Java数据库连接)"。它由一组用Java语言编写的类与接口组成。JDBC已成为一种供工具/数据库开发者使用的标准API,用户可以用纯Java API来编写数据库应用。
  使用JDBC可以很容易地把SQL语句传送到任何关系型数据库中。换言之,用户不需要为每一个关系数据库单独写一个程序。用JDBC API写出唯一的程序,能够将SQL语句发送到相应的任何一种数据库。Java与JDBC的结合,使程序员可以只写一次数据库应用软件后,就能在各种数据库系统上运行。由于Java语言具有健壮性、安全、易使用、易理解和自动下载到网络等优点,因此,它是数据库应用的一个极好的基础语言。现在需要找到一种能使Java应用与各种不同数据库对话的方式,而JDBC正是实现这种对话的一种机制。
  JDBC扩充了Java的应用范围。随着学习JAVA程序设计的人越来越多,对Java的数据库的访问需求会越来越迫切。MIS管理员希望Java与JDBC结合,因为这有助于更容易、更经济地发布企业信息。而各个公司可以不断地使用已安装的数据库,方便地存取信息,不必顾及这些数据库是在何种DBMS系统下存储的。有助于缩短新应用的开发时间,并可大大简化数据库的安装与版本控制。另外,在商业销售信息服务领域,Java与JDBC则可以更好地向外界客户提供最新信息。

二、JDBC与ODBC和其它 API 的比较
  目前,Microsoft 的ODBC(开放式数据库连接)API 是使用最广的、用于访问关系数据库的编程接口。它能在几乎所有平台上连接几乎所有的数据库。但为什么 Java 不使用 ODBC呢?其实,Java 可以使用ODBC,但最好是在JDBC 下通过JDBC-ODBC桥的形式使用,这一点我们稍后再说。
  现在现在也许有人有问:"为什么需要JDBC?"
  ODBC 不适合直接在Java中使用,因为它使用C语言接口。从 Java 调用本地 C 代码在安全性、实现、坚固性和程序的自动移植性方面都有许多缺点。


  1、 Java 没有指针,而 ODBC 却对指针用得很广泛(包括很容易出错的指针 "void *")。您可以将 JDBC 想象成被转换为面向对象接口的 ODBC,而面向对象的接口对 Java 程序员来说较易于接收。
  2、 ODBC 很难学。ODBC把简单功能的实现和高级功能的实现混在一起。即使? 简单的查询,其选项也极为复杂。相反,JDBC 尽量保证简单功能的简便性,而同时在必要时允许使用高级功能。
  3、 启用"纯 Java"机制需要JDBC 这样的Java API。如果使用ODBC,就必须手动地将ODBC 驱动程序管理器和驱动程序安装在每台客户机上。如果完全用 Java 编写 JDBC 驱动程序则 JDBC 代码在所有 Java 平台上(从网络计算机到大型机)都可以自动安装、移植并保证安全性。
  JDBC API 对于基本的SQL抽象和概念是一种自然的Java接口。它建立在ODBC上而不是从零开始。因此,熟悉ODBC的程序员将发现 JDBC 很容易使用。JDBC保留了ODBC的基本设计特征;事实上,两种接口都基于X/Open SQL CLI(调用级接口)。它们之间最大的区别在于:JDBC 以 Java 风格与优点为基础并进行优化,因此更加易于使用。