数据库访问接口汇编

上传人:最**** 文档编号:117182995 上传时间:2019-11-18 格式:PPT 页数:113 大小:582.50KB
返回 下载 相关 举报
数据库访问接口汇编_第1页
第1页 / 共113页
数据库访问接口汇编_第2页
第2页 / 共113页
数据库访问接口汇编_第3页
第3页 / 共113页
数据库访问接口汇编_第4页
第4页 / 共113页
数据库访问接口汇编_第5页
第5页 / 共113页
点击查看更多>>
资源描述

《数据库访问接口汇编》由会员分享,可在线阅读,更多相关《数据库访问接口汇编(113页珍藏版)》请在金锄头文库上搜索。

1、第五章 数据库访问接口 第五章 数据库访问接口 5.1 概述 5.2 ODBC与DAO对象 5.3 JDBC原理与应用 5.4 OLE DB和ADO 5.5 数据库中间件 5.1 概述 nDBMS是非常复杂的软件,编写程序通过某种数据库专用 接口与其通信是非常复杂的工作,为此,产生了数据库的 客户访问技术,即数据库访问技术。 n开放的数据库访问接口为数据库应用程序开发人员访问与 不同的、异构的数据库提供了统一的访问方式,采用这种 数据库接口可以通过编写一段代码实现对多种类型数据库 的复杂操作。实现了开放数据库的互联,并大大减小了编 程的工作量和开发时间。 n目前流行的开放数据库访问接口有: O

2、DBC JDBC OLE DB 数据库网关(SQL网关)。 (1)ODBC nODBC是Microsoft公司推出的开放数据库接口标准。ODBC为 应用程序和驱动模块提供了一个定义良好的、不依赖于数据库 的应用程序接口(API)。并且保持了与SQL标准的一致性。 n使用API时,ODBC通过一个驱动管理器来判定应用程序要连 接的数据库的类型,并载入(或卸载)对应的ODBC驱动。这 样,就实现了应用程序和数据库之间的相互独立,简化了从 Windows操作系统(以及其他一些操作系统)到数据库的访问 。 n目前,越来越多的第三方厂商在设计应用开发集成环境时,积 极采用ODBC技术,使应用开发工具可通

3、过ODBC实现对异构 数据库的快捷和方便的访问。 (2)JDBC nJDBC(Java Database Connectivity)是JavaSoft提供的第一个 支持lava语言的数据库API n它支持基本SQL功能,在不同的数据库功能模块的层次上为 Java开发人员提供了一个支持Java开发或支持Java应用程序运 行的环境访问各种数据库的统一的用户界面,同时还提供了多 样化的数据连接方式。 nJDBC主要由两层组成:JDBC应用程序接口(JDBC API)和 JDBC驱动应用程序接口。 JDBC API提供从应用程序到JDBC管理器的通讯,开发者通 过API使用标准Java机制访问数据库

4、。 数据库供应商提供JDBC驱动接口,也可以通过JDBC- ODBC连接桥使用传统的0DBC连接: (3)OLE DB n OLE DB定义了一个访问服务器的集合,通过这些服务器可以很容易 地连接到任意数目的数据源。这样,开发者就可以把多种不同的数据 源作为单一的虚拟数据库来管理。OLE DB允许使用标准的COM接口 访问数据。 n OLE DB为开发者提供访问关系数据库、文件、扩展表、电子邮件等 数据的方法。通过COM接口,开发者可以使用OLE DB方便地集成面 向对象的数据库和多维数据库。 n核心思想是生成独立的OLE DB组件对象,用以调度数据提供者的各 种附加特性和功能。这些独立的OL

5、E DB组件叫做“服务提供者”,允 许应用程序使用它们实现不同数据联合(同构的或异构的)之间的互 联。数据以单一的视图的形式存在,而不管它们的数据模型是关系型 的、面向对象的,还是多维的。 (4)数据库网关 n数据库网关也叫SQL网关,是一种应用程序接口(API) ,通过使用同一接口提供对运行在多种平台上的不同数据 库的访问。它们类似于实际的数据库中间件产品,为开发 者提供访问任意数目数据库的接口。 n数据库网关把SQL调用解释成为标准PAP(Format and Protocol)格式。PAP格式实现通用的客户机和服务器连 接,也就是异构数据库和运行平台的通用连结。 n数据库网关可以把API

6、调用直接翻译成PAP,把请求传递 到目标数据库并翻译,以便目标数据库和平台做出响应。 第五章 数据库访问接口 5.1 概述 5.2 ODBC与DAO对象 5.3 JDBC原理与应用 5.4 OLE DB和ADO 5.5 数据库中间件 5.2 ODBC与DAO对象 n5.2.1 ODBC和DAO概述 n5.2.2 ODBC的使用 n5.2.3 DAO的使用 5.2.1 ODBC和DAO概述 (1)ODBC概述 nODBC是80年代末90年代初出现的技术,它为编写关系数 据库的客户软件提供了统一的接口。ODBC提供统一的 API,可用于处理不同数据库的客户应用程序。 n使用ODBC API的应用程

7、序可以与任何具有ODBC驱动程 序的关系数据库进行通信。由于ODBC为关系数据库提供 了统一的接口,现在已经被广泛应用,并逐渐成为关系数 据库接口的标准。 n它建立了一组规范,并提供了一组对数据库访问的标准 API(应用程序编程接口)。这些API利用SQL来完成其大部 分任务。ODBC本身也提供了对SQL语言的支持,用户可 以直接将SQL语句送给ODBC。 nODBC的最大优点是能以统一的方式处理所有的关系数据 库。 n但是,ODBC仅限于关系数据库,由于ODBC的关系型特 性,很难使用ODBC与非关系数据源进行通信,例如对象 数据库、网络目录服务、电子邮件存储等。 (2)DAO概述 nDAO

8、(Database Access Object,数据访问对象)属于数据访 问客户端。是第一个面向对象的数据库访问接口。 nDAO是Microsoft一种用来访问Jet引擎的方法,主要适用于 单系统应用程序或在小范围本地分布中实现对桌面数据库 (如Access、FoxPro、dBase等)的访问。 n使用DA0的程序编码非常简单。它提供了完成关系数据库 系统管理所需的全部操作的属性和方法:包括创建数据库 ,定义表、字段和索引,以及建立表间的关系,定位和查 询数据库等工具。 nJet(Joint Engine Technology,数据连接引擎技术) 是一种基于工作站,通过DA0访问数据库的机制。

9、 nJet机制有自己的查询和结果集处理功能,并可对同构或 异构数据源作查询处理。 nJet技术目前已经达到了4.0版本,它是DA0,Access, VB等Windows应用进行数据库访问的基础。 引擎本身的数据库格式为MDB,也支持对目前流行的 绝大多数数据库格式的访问,当然MDB是数据库引擎 中效率最高的数据库。 (3)ODBC与DA0的区别 nODBC和DA0的区别在于它们访问数据库的机制不同。 0DBC的工作依赖于数据库制造商提供的驱动程序, 使用ODBC API的时候,Windous的ODBC管理程序把 数据库访问的请求传递给正确的驱动程序,驱动程序 再使用SQL语句指示DBMS完成数

10、据库访问工作。 而DA0则可以绕开了中间环节,直接使用Microsoft提 供的数据库连接性引擎技术(Jet)对数据库访问对象 集进行工作,速度比0DBC快。 nODBC是一种通用数据访问模型,而DAO更多的是作为 一种数据访问客户端。 n一般来说DA0是本机Access数据库数据源首选的访问接 口,但在客户/服务器体系结构上不如ODBC功能强大。 5.2.2 ODBC的使用 1. ODBC的组成和结构 2. ODBC的基本工作流程 3. 使用ODBC MFC类 4. ODBC数据源的管理 1. ODBC的组成和结构 n一个完整的ODBC由四个部分组成:应用程序接 口、驱动程序管理器、数据库驱

11、动程序和数据源 。 ODBC组件图 (1)应用程序接口 n负责处理并调用ODBC函数、发送对数据库的SQL请求及取得结果。 它并不直接与数据库打交道,因此,屏蔽了不同ODBC数据库驱 动器之间函数调用的差异,屏蔽了底层数据库系统的不同。为用 户提供统一的SQL编程接口和调用级界面,方便访问来自多种 DBMS的数据。 (2)驱动程序管理器 n驱动程序管理器是一个带有输入程序的动态链接库(DLL),主要目 的是为应用程序装载数据库驱动程序处理0DBC调用的初始化调用 ,提供0DBC调用的参数有效性和序列有效性。 (3)数据库驱动程序 n数据库驱动程序是一个完成ODBC函数调用并与数据之间相互影响的

12、 DLL。 如,当应用程序调用SQLBrowseConnect(),SQLConnect( )或SQLDriverConnect()函数时,驱动程序管理器装入驱动 程序。如果需要,数据库驱动程序将会修改应用程序的请求,使 得请求符合相关的DBMS所支持的文法。 n所以,ODBC驱动管理器的目的是加载数据库驱动器,便于ODBC函 数调用。 (4)数据源 n数据源由用户想要存取的数据以及与它相关的操作系统、DBMS和用 于访问DBMS的网络平台组成。 n数据源负责为应用程序存储和管理数据。它包含了数据库位置和数据 库类型等信息,实际上是一种数据连接的抽象。 nODBC实际上是一种相当底层的访问技术

13、,因此它可以从 底层设置和控制数据库,完成一些高级数据库技术无法完 成的功能。 2. ODBC的基本工作流程 n当应用程序要访问一个数据库时: 首先必须注册一个数据源,ODBC管理器根据数据源 提供的信息建立起ODBC与具体数据库的联系。 n这样,应用程序只需要将数据源名提供给ODBC, 就能建立起与相应数据库的连接。 ODBC API不能直接访问数据库。驱动程序管理器负 责将应用程序对ODBC API的调用传递给正确的驱动 程序。而驱动程序在执行完相应的操作之后,将结果 通过驱动程序管理器返回给应用程序。 在访问ODBC数据源时,需要ODBC驱动程序的支持 。 n一个ODBC应用的建立应涵盖

14、以下主要内容: 建立需要操作数据库的应用程序,该程序通过调用 ODBC函数提交SQL语句 提供运行环境,该环境应包含数据库驱动程序,它负 责处理ODBC函数调用,向数据源提交SQL请求,向 应用程序返回结果,必要时将SQL语法翻译成符合 DBMS语法规定的格式 具有由用户数据库、DBMS等构成的可供应用程序访 问的数据源 n具体来说,通过ODBC访问数据库的基本步骤如下: 创立并配置数据源; 建立一个与数据源的对话连接; 向数据源发出SQL请求; 定义一个缓冲区和数据格式用于存储访问结果; 提取结果; 处理各种错误; 向用户报告结果; 关闭与数据源的连接 nMicrosoft Develope

15、r Studio为大多数标准的数据库格式提 供了32位ODBC驱动器。这些标准数据格式包括有:SQL Server,Access,Paradox,dBase,FoxPro,Excel, Oracle 以及Microsoft Text。 nODBC API是一个内容丰富的数据库编程接口,包括60多 个函数、SQL数据类型以及常量的声明。ODBC API 独立 于DBMS和操作系统的,而且它与编程语言无关。 n不过直接使用ODBC API比较麻烦,所以微软后来又发展 出来DAO、更容易开发程序。 3. 使用ODBC MFC类 nODBC为关系数据库提供了统一的接口,但是ODBC API 十分复杂。

16、在Visual C+中,MFC(Microsoft Foundation Classe微软基础类库)提供了一些类, 对ODBC API进行 封装,为ODBC编程提供了一个面向对象的方法,ODBC编 程的复杂度大大降低。 nMFC ODBC类在使用上比ODBC API容易,但是损失了 ODBC API对低层的灵活控制,因此,MFC ODBC类属于 高级数据库接口。 n同ODBC API编程类似,MFC的ODBC编程也要先建立同 ODBC数据源的连接,这个过程由一个CDatabase对象的Open 函数实现。然后CDatabase对象的指针将被传递到 CRecordSet对象的构造函数里,使CRecordSet对象与当前建 立起来的数据源连接结合起来。 n完成数据源连接之后,大量的数据库编程操作将集中在记录集 的操作上。CRecordSet类的丰富的成员函数可以让开发人员 轻松地完成基本的数据库应用程序开发任务。 n当然,完成了所有的操作之后,在应用程序退出运行状态的时 候,需要将所有的记录集关闭,并关闭所有同数据源的连接。 nMFC

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号