ODBC与JDBC
通常,软件应用程序是用特定的编程语言(如Java、C#等)编写的,而数据库则接受其他特定于数据库的语言(如SQL)的查询。因此,当软件应用程序需要访问数据库中的数据时,需要一个能够相互翻译语言(应用程序和数据库)的接口。否则,应用程序程序员需要学习并在其应用程序中结合特定于数据库的语言。ODBC(开放数据库连接)和JDBC(Java数据库连接)是解决这个特定问题的两个接口。ODBC是一个平台、语言和操作系统无关的接口,可用于此目的。类似地,JDBC是Java编程语言的一个数据API。Java程序员可以使用JDBC到ODBC桥与任何ODBC兼容的数据库通信。
什么是ODBC?
ODBC是访问数据库管理系统(DBMS)的接口。ODBC是在1992年由sqlaccessgroup开发的,当时数据库和应用程序之间没有标准的通信媒介。它不依赖于特定的编程语言、数据库系统或操作系统。程序员可以使用ODBC接口编写应用程序,这些应用程序可以查询任何数据库中的数据,而不管它运行的环境是什么,也不管它使用的是什么类型的DBMS。
由于ODBC驱动程序充当应用程序和数据库之间的转换器,ODBC能够实现语言和平台的独立性。这意味着应用程序不再需要知道特定于数据库的语言。相反,它只知道并使用ODBS语法,驱动程序将用它能理解的语言将查询转换到数据库中。然后,以应用程序可以理解的格式返回结果。ODBC软件API可以用于关系数据库系统和非关系数据库系统。将ODBC作为应用程序和数据库之间的通用中间件的另一个主要优点是,每次数据库规范更改时,软件都不需要更新。只有更新ODBC驱动程序就足够了。
什么是JDBC?
JDBC是为Java编程语言开发的数据API。它是由sunmicrosystems(Java最初的所有者)与jdk1.1一起发布的。它的当前版本是jdbc4.0(目前与javase6一起发布)。Java.sql语言以及javax.sql语言包包含JDBC类。它是一个接口,通过提供查询和更新数据库中的数据的方法,帮助客户机访问数据库系统。JDBC更适合于面向对象的数据库。通过使用JDBC到ODBC桥,可以访问任何与ODBC兼容的数据库。
ODBC和JDBC有什么区别?