一、ODBC(Open   DataBase   Connectivity   :  开放数据连接) 
   
   
  ODBC  总体结构 
 应用程序   
 执行处理并调用odbc函数,提交sql语句并检索结果 
   
  Driver   Manager  
 管理应用程序和驱动程序之间的通讯,根据应用程序加载并卸载驱动程序, 
 处理odbc函数调用,获把它们传送到驱动程序 
   
 驱动程序       
 处理odbc函数调用,把sql语句提交到数据源,并返回结果到应用程序,如有必要, 
 驱动程序修改一个应用程序请求,以使请求与相关的DBMS支持的语法一致 
   
 数据源     
 用户要访问的DBMS,以及相关os  
   
                  Application  
                          |  
                          |    
              Driver   Manager  
        |                   |                   |  
        |                   |                   |  
 驱动程序   驱动程序   驱动程序 
        |                   |                   |  
 数据源       数据源       数据源 
   
   
   
 结合现实的高层开发工作流程如下: 
  1.数据应用系统首先获得在ODBC数据源管理器中建立的DSN(存储了与数据提供程序连接的详细信息包含数据库位置、数据库类型及相应的ODBC驱动程序等),然后  Driver   Manager依赖一种叫做数据库独立的交流(Database   Indepedent   Communications   Technology)的技术与数据源建立联系(其中涉及客户端和服务器端多种Agent对象的问题,详情不叙,可参见下图).  
   
     
  2.Driver   Mangaer调用特定ODBC驱动程序将ODBC标准API转化为适用于具体数据库系统的函数调用(数据库特征不同之处也在这里翻译如SQL语法差异等),然后经由客户端的Request   Agent发送到数据源.  
  3.数据源Database   Agent处理操作,将结果返回到客户端的Request   Agent,再向上经Driver(这里会有翻译和标准化错误码的行为)、Driver   Mangaer返回给Application.    
   
       需要说明的是定义和操作光标、维护事务、负责任何与访问数据源的必要软件层进行交互(包括与底层网络文件系统接口的软件)等行为亦由驱动程序完成.  
       
       结合ODBC   API调用顺序描叙工作流程:初始化(分配环境--->分配连接句柄--->与服务器连接--->分配语句句柄)-------->SQL处理(语句处理和检索部分)-------->终止(释放语句句柄--->与服务器断开--->释放连接句柄--->释放环境).

二、JDBC(Java   DataBase   Connectivity   :   Java数据库连接)  
   
   
   
   
    JDBC设计很多借鉴于ODBC: 
                          1.JDBC与ODBC都是基于X/Open的SQL调用级接口 
                          2.JDBC很多设计思想沿袭了ODBC,包括许多抽象和SQL   CLI实现 
                          3.JDBC的总体结构类似于ODBC,有四个组件:应用程序、驱动程序管理器、驱动程序和数据源,工作原 理亦大体同于ODBC.  
   
  1.JDBC保持了ODBC的基本特性,也独立于特定数据库.  
  2.使用相同源代码的应用程序通过动态加载不同的JDBC驱动程序,可以访问不同的DBMS.连接不同的  DBMS时,各个DBMS之间仅通过不同的URL进行标识.  
  3.JDBC的DatabaseMetaData接口提供了一系列方法,可以检查DBMS对特定特性的支持,并相应确定有什 么特性,从而能对特定数据库的特性予以支持 
  4.JDBC也支持在应用程序中同时建立多个数据库连接,采用JDBC可以很容易地用SQL语句同时访问多个 异构的数据库,为异构的数据库之间的互操作奠定基础 
   
  Java的驱动解决方案有四种:1.JDBC-ODBC   Bridge   2.本机API/集团式Java驱动程序    3.网络协议/全Java     4.本机协议/全Java

JDBC 与ODBC的区别相关推荐

  1. 浅谈JDBC与ODBC的区别与应用

    谈到JDBC与ODBC的区别,JDBC和ODBC其实都是用来连接数据库的启动程序.ODBC中文名字叫做开放数据库互联,是微软技术人员开发的开放服务结构中有关数据库的一个组成部分,它建立一组相关的规范, ...

  2. JDBC和ODBC的区别

    JDBC JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,它是Java十三个规范之一.可以为多种关系数据库提供统一访问 ...

  3. 浅谈jdbc和odbc的区别

    jdbc简介:Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数 ...

  4. JDBC与ODBC的区别与应用

    jdbc是使用通过JAVA的数据库驱动直接和数据库相连,而jdbc-odbc连接的是ODBC的数据源,真正与数据库建立连接的是ODBC! 建议使用JDBC直接连接,同时最好使用连接池! JDBC 是 ...

  5. java为什么不使用odbc_java jdbc和odbc的区别是什么?jdbc和odbc的关系是怎样的?

    对于jdbc和odbc你都了解多少呢?今天要给大家讲到的就是jdbc和odbc之间的内容,一起来了解一下jdbc和odbc的区别以及关系是怎样的吧! 下面先来给大家介绍一下jdbc和odbc之间的区别 ...

  6. JDBC、ODBC、OLE DB、ADO、ADOMD区别与联系

    ODBC: (Open Database Connectivity,开放数据库互连),它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口).这些API利用SQL来完成其大部分任务 ...

  7. Java系列之JDBC和ODBC之间的区别与联系

    JDBC简介 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,它是Java十三个规范之一.可以为多种关系数据库提供统一 ...

  8. JDBC和ODBC之间的区别

    转载自:JDBC和ODBC之间的区别 作者:青灯夜游 本文原创发布php中文网 补充:ODBC&JDBC简介 JDBC和ODBC都是API(应用程序编程接口),它帮助客户端的应用程序访问服务器 ...

  9. 木木的Java知识整理——JDBC与MyBatis的区别

    看了几篇大佬的相关整理,可以总结成如下几部分. JDBC与MyBatis的区别 一.各自定义 1.1 JDBC 1.2 MyBatis 二.JDBC与MyBatis的区别 一.各自定义 1.1 JDB ...

最新文章

  1. 使用Formik轻松开发更高质量的React表单(一)入门
  2. 向PE文件中空白处添加代码
  3. 天龙固件U盘更新_硅格T18D量产工具下载_硅格T18D量产工具官方版下载[u盘格式化]...
  4. python编程*三角形图形创意图片_python循环输出三角形图案的例子
  5. 学Python怎么样 发展前景如何
  6. MFC中动态创建button及添加响应事件
  7. 千层套路 - Vue 3.0 初始化源码探秘
  8. 天地图卫星地图_AutoCAD使用卫星地图
  9. 用docker swarm 实现集群
  10. T-SQL查询高级--理解SQL SERVER中非聚集索引的覆盖,连接,交叉和过滤
  11. ClassForName应用于工厂模式
  12. Assuming drive cache: write through 因为硬盘内存不足VM虚拟机开不了机的问题
  13. android移植(二)-4的尝试移植过程
  14. 微处理器常见问题及解答
  15. 读美妆论文AN AUTOMATIC FRAMEWORK FOR EXAMPLE-BASED VIRTUAL MAKEUP
  16. 他们是公众号界的一股清流!
  17. 进制转换——36进制
  18. Windows问题:“启用网络发现”打不开,每次点“开启”之后又变“关闭”了/ 文件夹右键属性没有共享功能
  19. java获取本机IP
  20. 搜狐云景客户端工具评测之WordPress的搭建

热门文章

  1. FAT32,EXFAT,FAT16和FAT12的所有信息
  2. 知乎究竟走的是什么路线?克隆之路靠谱吗?
  3. Larry Ellison - 简介
  4. Identify ksusetxn DID:An Deadlock ID
  5. 短视频直播一对一源码“皇冠”花落谁家
  6. 容器中运行Fabric区块链网络
  7. 【jQuery Demo】jQuery打造动态下滑菜单
  8. JAVA Metrics 度量工具使用介绍1
  9. 好奇:WayOs破解、OEM、修复、打包等工具大全,满足大家的好奇心发下截图
  10. 一起谈.NET技术,ASP.NET2.0服务器控件之类型转换器