欢迎来到天天文库
浏览记录
ID:40796582
大小:97.50 KB
页数:42页
时间:2019-08-07
《VisualC++数据库编程快速入门资料》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、VisualC++数据库编程快速入门odbc(opendatabaseconnectivity,开放数据库互连)是微软公司开放服务结构(wosa,windowsopenservicesarchitecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准api(应用程序编程接口)。这些api利用sql来完成其大部分任务。odbc本身也提供了对sql语言的支持,用户可以直接将sql语句送给odbc。一个基于odbc的应用程序对数据库的操作不依赖任何dbms,不直接与dbms打交道,所有的数据库操作
2、由对应的dbms的odbc驱动程序完成。也就是说,不论是foxpro、access还是oracle数据库,均可用odbcapi进行访问。由此可见,odbc的最大优点是能以统一的方式处理所有的数据库。一个完整的odbc由下列几个部件组成:应用程序(application)。odbc管理器(administrator)。该程序位于windows95控制面板(controlpanel)的32位odbc内,其主要任务是管理安装的odbc驱动程序和管理数据源。驱动程序管理器(drivermanager)。驱动程序管理器包含在odbc32
3、.dll中,对用户是透明的。其任务是管理odbc驱动程序,是odbc中最重要的部件。odbcapi。odbc驱动程序。是一些dll,提供了odbc和数据库之间的接口。数据源。数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的抽象。各部件之间的关系如图下图所示:应用程序要访问一个数据库,首先必须用odbc管理器注册一个数据源,管理器根据数据源提供的数据库位置、数据库类型及odbc驱动程序等信息,建立起odbc与具体数据库的联系。这样,只要应用程序将数据源名提供给odbc,odbc就能建立起与相应数据库的连接。在od
4、bc中,odbcapi不能直接访问数据库,必须通过驱动程序管理器与数据库交换信息。驱动程序管理器负责将应用程序对odbcapi的调用传递给正确的驱动程序,而驱动程序在执行完相应的操作后,将结果通过驱动程序管理器返回给应用程序。在访问odbc数据源时需要odbc驱动程序的支持。用visualc++5.0安装程序可以安装sqlserver、access、paradox、dbase、foxpro、excel、oracle和microsofttext等驱动程序.在缺省情况下,vc5.0只会安装sqlserver、access、foxp
5、ro和dbase的驱动程序.如果用户需要安装别的驱动程序,则需要重新运行vc5.0的安装程序并选择所需的驱动程序。1ado是微软整个com战略体系中的一个组成部分活动数据对象(ado)是一组由微软提供的com组件。ado建立在微软所提倡的com体系结构之上,它的所有接口都是自动化接口,因此在c++、visualbasic、delphi等支持com的开发语言中通过接口都可以访问到ado。ado通过使用oledb这一新技术实现了以相同方式可以访问关系数据库、文本文件、非关系数据库、索引服务器和活跃目录服务等的数据,扩大了应用程序中
6、可使用的数据源范围,从而成为微软整个com战略体系中访问数据源组件的首选,是odbc的替代产品。2ado对象模型组成与微软的其它数据访问模型dao和rdo相比,ado对象模型非常精炼,仅由三个主要对象connection、command、recordset和几个辅助对象组成,其相互关系如图所示。connection对象提供oledb数据源和对话对象之间的关联,它通过用户名称和口令来处理用户身份的鉴别,并提供事务处理的支持;它还提供执行方法,从而简化数据源的连接和数据检索的进程。command对象封装了数据源可以解释的命令,该命
7、令可以是sql命令、存储过程或底层数据源可以理解的任何内容。recordset用于表示从数据源中返回的表格数据,它封装了记录集合的导航、记录更新、记录删除和新记录的添加等方法,还提供了批量更新记录的能力。其它辅助对象则分别提供封装ado错误、封装命令参数和封装记录集合的列。3ado的特点分析(1)由于封装了许多底层工作,使用ado与使用odbc几乎是一样方便。(2)ado不仅具有odbc的主要功能,而且ado适用的数据源的范围要大的多。(3)在定义ado记录集变量和数据库表字段绑定类时,要求记录集的字段变量、状态变量与数据库表
8、字段的个数、顺序必须相同。这一点比在fmc中使用odbc要复杂一些。但在数据库字段与ado记录集字段变量绑定的宏中,ado提供的数据类型要远多于fmc中的rfx(如日期时间类型,在odbc中只能转换为cstring类型)。 (4)ado允许同一connection实例下有多
此文档下载收益归作者所有