关系数据库提供的应用程序接口.ppt
《关系数据库提供的应用程序接口.ppt》由会员分享,可在线阅读,更多相关《关系数据库提供的应用程序接口.ppt(46页珍藏版)》请在三一办公上搜索。
1、第十二章关系数据库提供的应用程序接口,12.1ODBC12.2OLE DB12.3ADO,第12章 关系数据库提供的应用程序接口 本章重点介绍了ODBC(Open Database Connectivity,开放数据库互连)的特点、体系结构、ODBC DSN的创建过程,以及UDA(Universal Data Access,一致数据访问)技术的两层标准接口OLE DB和ADO。OLE DB是系统级的编程接口,它定义了一组COM接口,这组接口封装各种数据库系统的访问操作,为数据处理方和数据提供方建立了标准。OLE DB还提供了一组标准的服务组件,用于提供查询、缓存、数据更新、事务处理等操作。AD
2、O是应用层级的编程接口。它利用OLE DB 提供的COM接口来访问数据,因此它适合于C/S(客户/服务器)系统和基于Web的应用,尤其在一些脚本语言中进行数据库访问操作是ADO主要优势。,121 ODBC 12.1.1 ODBC概述 ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它提供了一组规范和一组对不同类型的数据库进行访问的标准API(应用程序编程接口)函数。这些API利用SQL来完成其大部分任务。一个基于ODBC的应用程序对
3、数据库的操作不依赖任何DBMS,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。即不论是FoxPro、Access还是Oracle数据库,均可用ODBCAPI进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。一个完整的ODBC由下列几个部件组成:,1ODBC应用程序(Application)ODBC应用程序是用一般程序设计语言(如C语言等)编写的程序。2.ODBC API函数 3ODBC管理器(Administrator)该程序位于Windows95控制面板(ControlPanel)的32位ODBC内,其主要任务是管理安装的ODBC驱动程序和管理数据源。4ODB
4、C驱动程序管理器(DriverManager)驱动程序管理器包含在ODBC32.DLL中,对用户是透明的。应用程序不能直接调用 ODBC 驱动程序,只可调用ODBC驱动程序管理器提供的ODBC API函数,再由ODBC驱动程序管理器负责把相应的ODBC 驱动程序加载到内存中,同时把应用程序访问数据的请求传送给ODBC驱动程序。,5ODBC 驱动程序 ODBC 驱动程序具体负责把SQL请求传送到数据源的DBMS中,再把操作结果返回到ODBC驱动程序管理器。后者在把结果传送至客户端的应用程序。每种支持ODBC 的数据库都拥有自己的驱动程序,一种驱动程序只能固定地与对应的数据库通信,不能访问其他数据
5、库。6数据源 数据源就是需要访问的数据库。应用程序若要通过ODBC访问一个数据库,则首先要创建一个数据源,主要工作是指定数据源名(DSN,data source name),使其关联一个目的数据库以及相应的ODBC 驱动程序。所以说,数据源实际上是一种数据连接的抽象,指定了数据库位置和数据库类型等信息。,DSN有三种类型:(1)系统DSN即是面向系统全部用户的数据源,系统中的所有用户都可以使用。(2)用户DSN即是仅面向某些特定用户的数据源,只有通过身份验证才能连接。(3)文件DSN即是用于从文本文件中获取数据,提供多用户访问。各部件之间的关系如下:,工作流程:应用程序要访问一个数据库,首先必
6、须用ODBC管理器注册一个数据源。ODBC管理器根据数据源提供的数据库位置、数据库类型及ODBC驱动程序等信息,建立起ODBC与具体数据库的联系。应用程序将已创建好的数据源名提供给ODBC,ODBC就能建立起与相应数据库的连接,为访问数据库做好准备。在ODBC中,ODBC API函数不能直接访问数据库的,必须通过ODBC驱动程序管理器与数据库交换信息。ODBC驱动程序管理器在应用程序和数据源之间起着转换与管理的作用。,12.1.2 创建ODBC DSN 创建ODBC DSN 是通过使用ODBC管理器来进行。下面就介绍用ODBC管理器来创建Access DSN的操作步骤。1创建Access DS
7、N(1)单击Windows任务栏的“开始”按钮,选择“设置”“控制面板”,展开“管理工具”,双击“数据源(ODBC)”图标,打开“ODBC数据源管理器”对话框窗口,如图12.1。,图12.1“ODBC数据源管理器”对话框,(2)在“ODBC数据源管理器”对话框中,选择“系统DSN”选项卡。如图12.2。图12.2“ODBC数据源管理器”对话框,(3)单击“添加”按钮,打开下图的“创建新数据源”对话框窗口。列表框里列出了对应于不同数据库的许多驱动程序名。不同的驱动程序名就对应创建不同的DSN。这里选择“Microsoft Access Drive(*.mdb)”,表示创建Access DSN。图
8、12.3“创建新数据源”对话框,(4)单击“完成”按钮,弹出“ODBC Microsoft Access 安装”对话框,如图12.4所示。在“数据源名”文本框中输入一个DSN名字。本例输入为“Access_1”。图12.4“ODBC Microsoft Access 安装”对话框,【说明】l 搜索已创建的数据库,表示刚创建的DSN与这个数据库对应。l“创建”按钮,将弹出“新建数据库”对话框,用于创建新的数据库,与刚创建的DSN对应。l“修复”或“压缩”按钮,用于修复或压缩现有的数据库。l“高级”按钮,将弹出“设置高级选项”对话框,用于输入登录密码和密码,给以后的操作带来便利。(5)在图12.4
9、“ODBC Microsoft Access 安装”对话框中,单击“确定”按钮,返回“ODBC 数据源管理器”对话框,如下图12.5 所示。在“系统数据源”列表中,可以看到新创建的DSN和对应的数据库驱动程序名已出现在列表中。单击此对话框中的“确定”按钮。这样创建连接到Access数据库的DSN的操作以完成。,图12.5“ODBC 数据源管理器”对话框,2创建SQL Server DSN(1)操作同前述的1)、2),直到弹出如下图12.6的“创建新数据源”对话框窗口,在“名称”列表中选择“SQL Server”。图12.6“创建新数据源”对话框(2)根据提示一步一步的进行设置即可。,122 O
10、LE DB UDA(Universal Data Access,一致数据访问)技术包括OLE DB和ADO两层标准接口。OLE DB是系统级的编程接口,它定义了一组COM接口,这组接口封装各种数据库系统的访问操作,为数据处理方和数据提供方建立了标准。OLE DB还提供了一组标准的服务组件,用于提供查询、缓存、数据更新、事务处理等操作。因此,数据提供方只需进行一些简单的数据操作,数据处理方就可获得全部的数据控制能力。ADO是应用层级的编程接口。它利用OLE DB 提供的COM接口来访问数据,因此它适合于C/S(客户/服务器)系统和基于Web的应用,尤其在一些脚本语言中进行数据库访问操作是ADO主
11、要优势。图12.7 显示了统一数据访问的软件层次模型,图12.7 UDA的层次模型,如图所示,应用程序既可以通过ADO访问数据,也可以直接通过OLE DB访问数据,而ADO也是通过OLE DB访问底层数据的。可以说UDA(一致数据访问)技术的核心是OLE DB。OLE DB建立了数据访问的标准接口,它把所有的数据源经过抽象而形成行集(rowset)的概念。OLE DB模型主要包括如下一些COM对象:(1)数据源(Data Source)对象。它对应于一个数据提供者,它负责管理用户权限、建立与数据源的连接等初始操作。(2)会话(Session)对象。在数据源连接的基础上建立会话对象,会话对象提供
12、了事务控制机制。(3)命令(Command)对象。数据使用者利用命令对象执行各种数据操作,如查询、修改命令等。(4)行集(Rowset)对象。提供了数据的抽象表示,它可以是命令执行的结果,也可以有会话对象产生,它是应用程序主要的操作对象。,123 ADO OLE DB的对象模型简单、灵活。下面从应用层角度出发,介绍ADO技术。123.1 ADO技术 ADO对象模型定义了一组可编程的自动化对象,可应用于各种支持自动化特性的脚本语言。与一般的数据库接口相比,ADO可更好的用于网络环境,通过优化技术,它尽可能的降低网络流量;ADO的另一个特性是使用简单,因为它是面向高级用户的数据库接口,而且使用一组
13、简化的接口用以处理各种数据源。下面先给出ADO的对象模型图:,图12.8 ADO的对象模型图,在ADO模型中,主体对象只有三个:Connection、Command、Recordset,其他四个集合对象Errors、Propertie、Parameters和Fields分别对应Errors、Propertie、Parameters和Fields对象,这些对象组成了ADO对象模型。典型的ADO应用是:(1)使用Connection对象与数据源建立连接;(2)然后用一个Command对象给数据库发出操作命令;(3)Recordset对象对结果集数据进行维护或者浏览等操作。Command命令所使用的
14、命令语言与底层所使用的OLE DB数据源有关,不同的数据源可以使用不同的命令语言,对于关系型数据库,通常使用SQL作为命令语言。Command对象是可选对象,它是否有效取决于OLE DB数据提供者是否实现了Icommand接口。,下面对ADO的各个对象进行讨论。(1)Connection对象。利用Connection对象可以实现与数据源建立连接。(2)Command对象。Command对象代表一个操作命令,主要是通过调用其各种方法来执行针对数据源的有关操作。(3)Recordset对象。Recordset对象代表一个表的记录集或命令执行的结果,在记录集中,总有一个当前记录。记录集是ADO管理数
15、据的基本对象,它是一种表状结构,每一行对应一个记录(Record),每一列对应一个域(Field)。Recordset对象也可通过游标对记录进行访问,在ADO中,游标分为四种:静态游标。提供对数据集的一个静态拷贝,允许各种移动操作,包括前移、后移等等,但其他用户所做的操作反映不出来。,动态游标。允许各种移动操作,包括前移、后移等等,并且其他用户所做的操作直接反映出来。前向游标。允许各种前向移动操作,不能向后移动,并且其他用户所做的操作直接反映出来。键集(Keyset)游标。类似于各种动态游标,也能看到其他用户所作的数据修改,但不能看到其他用户新加的记录,也不能访问其他用户删除的记录。ADO提供
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关系 数据库 提供 应用程序 接口

链接地址:https://www.31ppt.com/p-5928558.html