首页 > 编程知识 正文

对jdbc的理解,jdbc和sql关系

时间:2023-05-06 12:27:21 阅读:209853 作者:4326

目录

ODBC是什么?

JDBC是什么?

JDBC和ODBC的联系

JDBC和ODBC的区别

JDBC的移植性比ODBC好

JDBC比ODBC容易理解容易使用

使用的语言不同

参考文档


ODBC是什么?

开放数据库连接(Open Database Connectivity,ODBC)是为解决异构数据库间的数据共享而产生的,现已成为WOSA(The Windows Open System Architecture ),Windows开放系统体系结构)的主要部分和基于Windows环境的一种数据库访问接口标准ODBC 为异构数据库访问提供统一接口,允许应用程序以SQL 为数据存取标准,存取不同DBMS管理的数据;使应用程序直接操纵DB中的数据,免除随DB的改变而改变。用ODBC 可以访问各类计算机上的DB文件,甚至访问如Excel 表和ASCI I数据文件这类非数据库对象。

早期的数据库开发领域没有通用的应用程序编程接口,开发人员在使用不同数据库产品时,必须学习和使用厂商专用API,例如Oracle Call Interface、Microsoft Database Library等。针对业界对通用编程接口的需求,微软推出了ODBC(Open Database Connectivity)方案,并获得厂商和开发人员的认可。ODBC建立了一组规范,并提供了对数据库访问的标准API,后来被X/OPEN和ISO/IEC采纳,作为SQL标准的一部分。

JDBC是什么?

JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。

SUN参考了ODBC,为JAVA设计了专用的数据库连接规范JDBC(JAVA Database Connectivity)。JDBC期望的目标是让Java开发人员在编写数据库应用程序时,可以有统一的接口,无须依赖特定数据库API,达到“ 一次开发,适用所有数据库”。虽然实际开发中,经常会因为使用了数据库特定的语法、数据类型或函数等而无法达到目标,但JDBC的标准还是大大简化了开发工作。

JDBC标准主要分为两部分:面向应用开发人员的应用程序开发接口面向数据库驱动程序的开发者(通常是数据库厂商)接口。JDBC标准中,按操作方式把驱动程序分为四种类型。

JDBC和ODBC的联系

JDBC是SUN公司参考ODBC设计的,两者具有很多相似性。

JDBC和ODBC都是用来连接数据库的启动程序,JDBC和ODBC由于具有数据库独立性甚至平台无关性,因而对Internet上异构数据库的访问提供了很好的支持。

JDBC与ODBC都是基于X/Open的SQL调用级接口;从结构上来讲,JDBC的总体结构类似于ODBC,都有四个组件应用程序、驱动程序管理器、驱动程序和数据源,工作原理亦大体相同;在内容交互方面,JDBC保持了ODBC的基本特性,也独立于特定数据库。 而且都不是直接与数据库交互,而是通过驱动程序管理器。

JDBC和ODBC的区别 JDBC的移植性比ODBC好

通常情况下,安装完ODBC驱动程序之后,还需求经过确定的配置才能够应用。而不相同的配置在不相同数据库服务器之间不能够通用。也那是说,装一次需求配置一次。但是JDBC数据库驱动程序则不相同。假如采用JDBC数据库驱动程序的话,则只需要选取适当的 JDBC数据库驱动程序,就不需要额外的配置。在安装过程中,JDBC数据库驱动程序会自己完成有关的配置。为此JDBC的移植性要比ODBC要好。

JDBC比ODBC容易理解容易使用 使用的语言不同

JDBC在Java编程时使用,ODBC一般在C/C++编程时使用。ODBC不适合在Java中使用,Java要使用ODBC需要使用JDBC-ODBC桥接器,缺点较多,一般不使用,Java使用JDBC和厂家实现的驱动jar包实现访问数据库。

参考文档

https://baike.baidu.com/item/%E5%BC%80%E6%94%BE%E6%95%B0%E6%8D%AE%E5%BA%93%E4%BA%92%E8%BF%9E/10418782?fromtitle=ODBC&fromid=759553&fr=aladdin

https://baike.baidu.com/item/JDBC

https://blog.csdn.net/autfish/article/details/52170053

https://blog.csdn.net/u010926964/article/details/46389867

https://blog.csdn.net/qq_16691531/article/details/79482469

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。