用visualc 开发数据库应用程序

上传人:小** 文档编号:54433201 上传时间:2018-09-12 格式:DOC 页数:41 大小:235KB
返回 下载 相关 举报
用visualc  开发数据库应用程序_第1页
第1页 / 共41页
用visualc  开发数据库应用程序_第2页
第2页 / 共41页
用visualc  开发数据库应用程序_第3页
第3页 / 共41页
用visualc  开发数据库应用程序_第4页
第4页 / 共41页
用visualc  开发数据库应用程序_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《用visualc 开发数据库应用程序》由会员分享,可在线阅读,更多相关《用visualc 开发数据库应用程序(41页珍藏版)》请在金锄头文库上搜索。

1、1用用 Visual C+开发数据库应用程序开发数据库应用程序1、 概述1、1 Visual C+开发数据库技术的特点Visual C+提供了多种多样的数据库访问技术ODBC API、MFC ODBC、DAO、OLE DB、ADO 等。这些技术各有自己的特点,它们提供了简单、灵活、访问速度快、可扩展性好的开发技术。1.简单性 Visual C+中提供了 MFC 类库、ATL 模板类以及 AppWizard、ClassWizard 等一系列的 Wizard工具用于帮助用户快速的建立自己的应用程序,大大简化了应用程序的设计。使用这些技术,可以使开发者编写很少的代码或不需编写代码就可以开发一个数据库

2、应用程序。2.灵活性 Visual C+提供的开发环境可以使开发者根据自己的需要设计应用程序的界面和功能,而且,Visual C+提供了丰富的类库和方法,可以使开发者根据自己的应用特点进行选择。3.访问速度快 为了解决 ODBC 开发的数据库应用程序访问数据库的速度慢的问题,Visual C+提供了新的访问技术OLE DB 和 ADO,OLE DB 和 ADO 都是基于 COM 接口的技术,使用这种技术可以直接对数据库的驱动程序进行访问,这大大提供了访问速度。4.可扩展性 Visual C+提供了 OLE 技术和 ActiveX 技术,这种技术可以增强应用程序的能力。使用 OLE 技术和 Ac

3、tiveX 技术可以使开发者利用 Visual C+中提供的各种组件、控件以及第三方开发者提供的组件来创建自己的程序,从而实现应用程序的组件化。使用这种技术可以使应用程序具有良好的可扩展性。5.访问不同种类数据源 传统的 ODBC 技术只能访问关系型数据库,在 Visual C+中,提供了 OLE DB 访问技术,不仅可以访问关系型数据库,还可以访问非关系型数据库。1、2 Visual C+开发数据库技术Visual C+提供了多种访问数据库的技术,如下所示:1.ODBC(Open DataBase Connectivity) 2.MFC ODBC(Microsoft Foundation C

4、lasses ODBC) 3.DAO (Data Access Object) 24.OLE DB(Object Link and Embedding DataBase) 5.ADO(ActiveX Data Object) 这些技术各有自己的特点,总结如下:1.ODBC ODBC 是客户应用程序访问关系数据库时提供的一个统一的接口,对于不同的数据库,是客户应用程序访问关系数据库时提供的一个统一的接口,对于不同的数据库,ODBC提供了一套统一的提供了一套统一的 API,使应用程序可以应用所提供的 API 来访问任何提供了 ODBC 驱动程序的数据库。而且,ODBC 已经成为一种标准,所以,目前

5、所有的关系数据库都提供了 ODBC 驱动程序,这使 ODBC 的应用非常广泛,基本上可用于所有的关系数据库。但由于 ODBC 只能用于关系数据库只能用于关系数据库,使得利用 ODBC 很难访问对象数据库及其它非关系数据库很难访问对象数据库及其它非关系数据库。由于 ODBC 是一种底层的访问技术,因些,ODBC API 可以使客户应用程序能够从底层设置和控制数据库,完成一些高层数据库技术无法完成的功能。2.MFC ODBC 由于直接使用 ODBC API 编写应用程序要编制大量代码,在 Visual C+中提供了 MFC ODBC 类,封装了 ODBC API,这使得利用 MFC 来创建 ODB

6、C 的应用程序非常简便。3.DAO (Data Access Object)DAO 提供了一种通过程序代码创建和操纵数据库的机制。提供了一种通过程序代码创建和操纵数据库的机制。多个 DAO 构成一个体系结构,在这个结构中,各个 DAO 对象协同工作。MFC DAO 是微软提供的用于访问用于访问 Microsoft Jet 数据库文件数据库文件(*.mdb)的强有力的数据库开发工具,它通过 DAO 的封装,向程序员提供了 DAO 丰富的操作数据库手段。4.OLE DB OLE DB 是 Visual C+开发数据库应用中提供的新技术,它基于基于 COM 接口接口。因此,OLE DB 对对所有的文

7、件系统包括关系数据库和非关系数据库都提供了统一的接口所有的文件系统包括关系数据库和非关系数据库都提供了统一的接口。这些特性使得 OLE DB 技术比传统的数据库访问技术更加优越。与 ODBC 技术相似,OLE DB 属于数据库访问技术中的底层接口属于数据库访问技术中的底层接口。直接使用直接使用 OLE DB 来设计数据库应用程序需要大量的代码。在来设计数据库应用程序需要大量的代码。在 VC 中提供了中提供了ATL模板,用模板,用于设计于设计 OLE DB 数据应用程序和数据提供程序。数据应用程序和数据提供程序。5.ADO (ActiveX Data Object)3ADO 技术是基于基于 OL

8、E DB 的访问接口的访问接口,它继承了 OLE DB 技术的优点,并且,ADO 对 OLE DB的接口作了封装,定义了 ADO 对象,使程序开发得到简化,ADO 技术属于数据库访问的高层接高层接口。口。2、 使用使用 ODBC APIMicrosoft 开放数据库互连(ODBC,Open DataBase Connectivity)是 Microsoft Windows 开放服务体开放服务体系(系(WOSA)的一部分,是一个数据库访问的标准接口。使用这一标准接口,我们可以不关心具体的数据库管理系统(数据库管理系统(DBMS)的细节,而只要有相应类型数据库的 ODBC 驱动程序,就可以实现对数

9、据库的访问。ODBC 编程接口为我们提供了极大的灵活性,我们可以通过这一个接口访问不同种类的数据库。而且,通过相应的 ODBC 驱动程序,我们可以方便地实现不同数据类型之间的转换。21 ODBC API 概述概述ODBC 是一个应用广泛的数据库访问应用编程接口(API),使用标准的 SQL(结构化查询语言)作为其数据库访问语言。21.1 体系结构ODBC 的结构是建立在客户机服务器体系结构之上,它包含如下四个部分:应用程序(应用程序(Application ):):应用程序即用户的应用,它负责用户与用户接口之间的交互操作,以及调用 ODBC 函数以给出SQL 请求并提取结果以及进行错误处理。O

10、DBC 驱动程序管理器驱动程序管理器(Driver Manager):ODBC 驱动程序管理器为应用程序加载和调用驱动程序,它可以同时管理多个应用程序和多个驱动程序。它的功能是通过间接调用函数和使用动态链接库(DLL)来实现的,因此它一般包含在扩展名为”DLL”的文件中。ODBC 驱动程序(Driver)ODBC 驱动程序执行 ODBC 函数调用,呈送 SQL 请求给指定的数据源,并将结果返回给应用程序。驱动程序也负责与任何访问数据源的必要软件层进行交互作用,这种层包括与底层网络或文件系统接口的软件。数据源数据源数据源由数据集和与其相关联的环境组成,包括操作系统、DBMS 和网络(如果存在的话

11、)。ODBC 通过引入“数据源”的概念解决了网络拓扑结构和主机的大范围差异问题,这样,用户看到的是数据源的名称而不必关心其它东西。2 1.2 数据类型ODBC 使用两类数据类型使用两类数据类型:SQL 数据类型和 C 数据类型。SQL 数据类型用于数据源,C 数据类型用于应用程序代码中。2 1.3 句柄ODBC API 实现数据库操作的手段是语句,这是一个强有力的手段。ODBC 语句除了能执行SQL 语句和完成查询操作之外,还能实现大多数数据库操作。在 ODBC 中,使用不同的句柄(使用不同的句柄(HANDLE)来标志环境)来标志环境(ENVIRONMENT)、连接、连接(CONNECTION

12、)、语句(、语句(STATEMENT)、描述器()、描述器(DESCRIPTOR)等)等。句柄就是一个应用程序变量,系统用它来存储关于应用程序的上下文信息和应用程序所用到的一些对象。它和 Windows 编程中的概念类似,不过 ODBC 更加完善了句柄的作用。41、 环境句柄是环境句柄是 ODBC 中整个上下文的句柄中整个上下文的句柄,使用 ODBC 的每个程序从创建环境句柄开始,从创建环境句柄开始,以释放环境句柄结束以释放环境句柄结束。所有其它的句柄(这一应用程序所有的联接句柄和语句句柄)都由环境句柄中的上下文来管理。环境句柄在每个应用程序中只能创建一个。2、联接句柄管理有关联接的所有信息联

13、接句柄管理有关联接的所有信息。联接句柄可以分配多个,这不仅合法而且很有用;但不要生成不必要的句柄以免资源的浪费。但是,不同的驱动程序支持的联接情况有所不同,有的驱动程序在一个应用程序中仅支持一个联接句柄,有的驱动程序仅支持一个语句句柄。在应用程序中,可以在任何适当的时候联接或脱离数据源,但不要轻易地建立或脱离联接。3、语句句柄是语句句柄是 ODBC API 真正发挥重要作用的,它被用来处理真正发挥重要作用的,它被用来处理 SQL 语句及目录函数,每个语句及目录函数,每个语句句柄只与一个联接有关。语句句柄只与一个联接有关。当驱动程序接收一个来自应用程序的函数调用指令而该指令包含一个语句句柄时,驱

14、动程序管理器将使用存储在语句句柄中的联接句柄来将这一函数调用发送给合驱动程序管理器将使用存储在语句句柄中的联接句柄来将这一函数调用发送给合适的驱动程序。适的驱动程序。4、描述器句柄是元数据的集合,这些元数据描述了描述器句柄是元数据的集合,这些元数据描述了 SQL 语句的参数、记录集的列等信息语句的参数、记录集的列等信息。当有语句被分配内存之后,描述器自动生成,称为自动分配描述器。在程序中,应用程序也可调用SQLAllocHandle 分配描述器。当应用程序调用调用 API 函数函数 SQLAllocHandle 时,驱动管理器或者时,驱动管理器或者 ODBC 驱动程序将为所声明的驱动程序将为所

15、声明的句柄类型分配内部结构,返回句柄值。句柄类型分配内部结构,返回句柄值。21.4 异常处理为为了在程序开发过程中调试程序,发现程序错误调试程序,发现程序错误,ODBC API 通过两种方式返回有关通过两种方式返回有关 ODBC API 函数执行的的信息:返回码和诊断记录。函数执行的的信息:返回码和诊断记录。返回码返回函数执行的返回值,说明函数执行成功与否。诊断记录说明函数执行的详细信息。1.返回码(Return Code) 每一个 ODBC API 函数都返回一个代码函数都返回一个代码返回码,指示函数执行的成功与否返回码,指示函数执行的成功与否。如果函数调用成功,返回码为 SQL_SUCCE

16、SS 或或 SQL_SUCCESS_WITH_INFO。SQL_SUCCESS 指示可通过诊断记录获取有关操作的详细信息,SQL_SUCCESS_WITH_INFO 指示应用程序执行结果带有警告信息,可通过诊断记录获取详细的信息。如果函数调用失败,返回码为函数调用失败,返回码为 SQL_ERROR。下面的一段代码根据函数 SQLFetch()执行的返回码,判断函数执行的成功与否,从而据此进行相应的处理。SQLRETURN rtcode;/what?SQLHSTMT hstmt;/what for?While(rtcode=SQLFetch(hstmt)!=SQL_NO_DATA)if(rtcode=SQL_SUCCESS_WITH_INFO)/显示警告信息5else/显示出错信息break;/函数调用成功,进行处理如果程序执行错误,返回码为程序执行错误,返回码为 SQL_INVALID_HANDLE,程序无法执行,而其它的返回码都带有程序执行的信息。2.诊断记录(

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

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