ODBC 与 JDBC.

  ODBC(Open Database Connectivity,开放数据互联)是微软公司开放服务结构(WOSA)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(Application Programming Interface 应用编程接口)。一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,因为它不直接与DBMS打交道,所有的数据库操作由对应的ODBC驱动程序完成。简言之,ODBC最大优点是能以统一的方式处理所有的数据库。

   同样地,JDBC也是一组相关于数据库的接口规范,它定义了一个支持标准SQL功能的通用底层的API,由Java语言编写的类和接口组成,旨在让各数据库开发商为Java程序员提供标准的数据库API。通过驱动程序管理器,JDBC API可利用不同的驱动程序连接不同的数据库系统。

   相比之下,JDBC有两个地方优于ODBC:首先,因为JDBC使用的是Java语言,所以基于Java语言的平台无关性,JDBC应用程序可以自然实现跨平台特性,因而更适合于Internet上异构环境的数据库应用。再者,JDBC驱动程序管理器是内置的,驱动程序本身也可通过web浏览器自动下载,无须安装、配置;而ODBC驱动程序管理器和ODBC驱动程序必须在每台客户机上分别安装、配置。

   以上可知,ODBC与JDBC是两种相关数据库访问的接口规范,不同的数据库产品可以采用不同的规范。试想,如果一种数据库只实现了ODBC的规范而不支持JDBC那该怎么办呢(现实中虽然很少见,但此处只是便于自己理解。)?此时JDBC-ODBC桥就可以发挥很大的作用了。JDBC-ODBC桥是一个JDBC驱动程序,它通过将JDBC操作转换为ODBC操作来实现JDBC操作。简要描述下基于JDBC-ODBC桥的数据库访问方法:

   1. 设置ODBC数据源;

   2. 代码设计(加载数据库驱动、连接数据库及发送SQL指令)

   不过据说现在这种方法很土,J2SE标准文档中可见。

       http://java.sun.com/j2se/1.3/docs/guide/jdbc/getstart/bridge.doc.html#996747 

   引述如下:

   JDBC-ODBC Bridge

   If possible, use a Pure Java JDBC driver instead of the Bridge and an ODBC driver.

   This completely eliminates the client configuration required by ODBC. It also

   eliminates the potential that the Java VM could be corrupted by an error in the 

   native code brought in by the Bridge (that is, the Bridge native library, the ODBC 

   driver manager library, the ODBC driver library, and the database client library). 

 

   The JDBC-ODBC Bridge driver is recommended for use in prototyping efforts and for 

   cases where no other JDBC technology-based driver exists. If a commercial, all- 

   Java JDBC driver is available, we recommend that it be used instead of the Bridge. 

2010/1/29

 

### 回答1: sun.jdbc.odbc.jdbcodbcdriver是Java语言中用于连接数据库的一个驱动程序。它是由Oracle公司开发的,可以连接到多种不同的数据库,例如Microsoft Access、Microsoft Excel、Oracle、MySQL等。 该驱动程序是通过ODBC(Open Database Connectivity)技术来实现的,ODBC是一种用于连接不同数据库的开放式软件接口技术。sun.jdbc.odbc.jdbcodbcdriver可以将ODBCJava语言连接起来,实现在Java程序中访问各种数据库的能力。 在连接到数据库时,需要使用sun.jdbc.odbc.jdbcodbcdriver提供的接口和方法来建立连接、执行SQL语句、获取数据等操作。这些接口和方法的使用方式与Java语言中操作其他对象的方式类似,非常简单易懂。 虽然sun.jdbc.odbc.jdbcodbcdriver具有较好的兼容性和通用性,但随着技术的发展,它已经不再推荐使用,因为它的性能比其他一些驱动程序要低得多。目前,许多开发人员都向使用更为高效的驱动程序,例如JDBC-ODBC Bridge、MySQL Connector/J、Oracle JDBC Driver等。 总之,sun.jdbc.odbc.jdbcodbcdriver是Java语言中一种用于连接多种数据库的早期驱动程序,虽然已经不再推荐使用,但在一些老旧的项目中仍有着一定的应用。 ### 回答2: sun.jdbc.odbc.jdbcodbcdriver是Java JDBC规范中的一种JDBC驱动程序。该驱动程序使得Java应用程序能够与使用ODBC连接的数据库进行交互。 该驱动程序是由Sun Microsystems公司提供的,现在已经被Oracle公司继承并维护。它是一种桥接(bridge)驱动程序,通过ODBC协议实现Java数据库之间的通讯,因此需要使用ODBC连接才能连接数据库。 sun.jdbc.odbc.jdbcodbcdriver的优点是兼容性强,支持多种数据库类型,包括Microsoft Access、Microsoft SQL Server等常见数据库,而且使用方便,在Java程序中可以直接使用标准的JDBC接口进行数据库操作。 不过,由于该驱动程序是基于ODBC协议实现的,因此只能在Windows平台上使用,而且连接效率相对比较低。现在,随着Java技术的不断发展,越来越多的数据库厂商提供了更为高效的JDBC驱动程序,sun.jdbc.odbc.jdbcodbcdriver已经不再是最优的选择。 总之,sun.jdbc.odbc.jdbcodbcdriver是一种历史悠久的JDBC驱动程序,为Java开发者操作ODBC连接提供了便利,但随着技术的不断进步,已逐渐被其他高效的驱动程序所替代。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值