没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
第2章 Visual C++数据库开发技术介绍
Visual C++是 Microsoft Visual Studio 开发组件中最为强大的编程工具。一方面,它
是当今最为流行的系统级开发语言,另一方面,它能和 Microsoft 的操作系统无缝结合,
开发出高性能的 Windows 应用程序。
Visual C++提供了多种数据库开发技术,几乎能访问所有的数据库系统,如 Oracle、
SQL Server、DB2、Sybase、FoxPro、Access 等等。而且还提供了良好的开发环境,支
持数据库厂商提供的数据库开发库。如本章要讲到的 OO4O(Oracle objects for OLE),它
是 Oracle 厂商提供的专门针对 Oracle 数据库的开发库,利用这些库可以更好和更快捷
的访问 Oracle 数据库。
利用 Visual C++可以开发出功能强大、性能优良和界面友好的数据库应用程序,这
正是许多公司长期以来采用 Visual C++开发数据库系统的重要原因。
2.1 概述
Visual C++提供了多种数据库访问技术,这些技术各有特色,给开发者提供了更多
的选择。本节首先介绍 Visual C++开发数据库的一些优势,然后介绍这些数据库开发技
术的种类。
2.1.1 Visual C++开发数据库的优势
目前能够开发数据库系统的工具有很多,除了 Visual C++ ,还有 Delphi 、
PowerBuilder、Visual Basic 等等。相比而言,Visual C++拥有许多优势,主要表现在以
下方面:
● 简单性
Visual C++中提供了 MFC 类库、ATL 模板类以及开发向导工具(如应用程序向导
AppWizard 和创建类向导 ClassWizard 等一系列工具),方便开发者快速建立自己的应用
程序,把更多的精力放在数据库系统的设计和开发中。
● 灵活性
Visual C++提供的开发环境可以使开发者根据自己的需要设计应用程序的界面和功
能,其丰富的类库和控件,为开发者提供了更多的选择。
● 访问速度快
为了解决 ODBC 开发数据库应用程序访问数据库速度慢的问题,Visual C++提供了
新的访问技术——OLE DB 和它的高层接口 ADO,OLE DB 和 ADO 都是基于 COM 接
口的技术,使用这种技术可以直接对数据库的驱动程序进行访问,这大大提高了访问速
度。
第 2 章 Visual C++数据库开发技术介绍
• 29 •
● 可扩展性
Visual C++提供了 OLE 技术和 ActiveX 技术,这种技术可以增强应用程序的能力。
使用 OLE 技术和 ActiveX 技术可以使开发者利用 Visual C++中提供的各种组件、控件以
及第三方开发者提供的组件来创建自己的程序,从而实现应用程序的组件化。使用这种
技术可以使应用程序具有良好的可扩展性。
● 访问多种数据源
传统的 ODBC 技术只能访问关系型数据库,在 Visual C++中,OLE DB 访问技术,
不仅可以访问关系型数据库,还可以访问非关系型数据库。
2.1.2 Visual C++数据库开发技术
Visual C++提供了多种数据库开发技术,主要包括 ODBC API、MFC ODBC、DAO、
OLE DB 和 ADO。
● ODBC(Open DataBase Connectivity)API
ODBC 是为数据库应用程序访问关系型数据库时提供的一个统一接口,对于不同的
数据库,ODBC 提供了一套统一的 API,使应用程序可以访问任何一种提供了 ODBC 驱
动程序的数据库。而且,ODBC 已经成为一种标准,所以,目前所有的关系型数据库都
提供了 ODBC 驱动程序,这使 ODBC 的应用非常广泛, 但 ODBC 只能用于关系型数据
库,使得利用 ODBC 很难访问对象数据库及其它非关系型数据库。ODBC 是一种底层的
访问技术,因些,ODBC API 可以使客户应用程序能够从底层设置和控制数据库,完成
一些高层数据库开发技术无法完成的功能。
● MFC ODBC(Microsoft Foundation Classes ODBC)
由于直接使用 ODBC API 编写应用程序要编制大量代码,开发者往往需要花费很多
的精力在非核心代码的维护上,而 Visual C++中提供了 MFC ODBC 类,封装了 ODBC
API,这使得利用 MFC 来创建 ODBC 的应用程序非常简便。
● DAO (Data Access Object)
DAO 提供了一种通过程序代码创建和操纵数据库的机制。多个 DAO 构成一个体系
结构,在这个结构中,各个 DAO 对象协同工作。MFC DAO 是微软提供的用于访问
Microsoft Jet 数据库文件(*.mdb)的强有力的数据库开发工具,它通过 DAO 的封装,向
程序员提供了 DAO 丰富的操作数据库手段。
● OLE DB(Object Link and Embedding DataBase)
OLE DB 是 Visual C++开发数据库应用中提供的新技术,它基于 COM 接口。因此,
OLE DB 对所有的文件系统包括关系型数据库和非关系型数据库都提供了统一的接口。
这些特性使得 OLE DB 技术比传统的数据库访问技术更加优越。 与 ODBC 技术相似,
OLE DB 属于数据库访问技术中的底层接口。直接使用 OLE DB 来设计数据库应用程序
需要大量的代码,通常使用下面将要介绍的 ADO 数据访问接口。
● ADO(ActiveX Data Object)
ADO 技术是基于 OLE DB 的访问接口,它继承了 OLE DB 技术的优点,并且,ADO
对 OLE DB 的接口作了封装,定义了 ADO 对象,使程序开发得到简化,ADO 技术属于
Visual C++与 Oracle 数据库编程案例
• 30 •
数据库访问的高层接口。
Visual C++ 提供了上述几种开发技术,但是微软推荐使用 MFC ODBC 和 ADO 数
据库开发技术。其中 DAO 开发技术已经不再被 Visual C++.Net 支持,而且在实际的项
目开发中,也主要使用这两种开发技术,本书将重点介绍这两种开发技术。
2.2 MFC ODBC 数据库开发技术
ODBC 是一个应用广泛的数据库访问应用编程接口,使用标准的 SQL 作为其数据
库访问语言。ODBC 的设计是建立在客户机/服务器体系结构基础之上的。ODBC 使开发
者避免了与数据源连接的复杂性。几乎所有的关系型数据库系统都提供 ODBC 驱动程
序,例如 SQL Server、Oracle、Informix、DB2、Sysbase 等等。ODBC 数据库访问接口
是用 C 语言编写的,充分体现了 C 语言的通用性,从而可以更好的访问多种关系型数据
库系统。开发者只需安装该数据库系统的 ODBC 驱动程序,就可以建立应用程序和数据
库系统的通讯接口,从而使应用程序快速访问和操作数据库了。
2.2.1 MFC ODBC 主要类介绍
Visual C++中提供了 MFC ODBC 类,封装了 ODBC API,这使得利用 MFC 来创建
ODBC 的应用程序非常简便。在 MFC ODBC 类中,常用的类有:CDatabase 数据库类、
CRecordset 记录集类、CRecordView 可视记录集类和 CDBException 异常类。
CDatabase 类对象建立了和数据库数据源的一个连接,通过它可以对数据库进行操
作。例如使用 ExecuteSQL 函数实现对数据库记录的添加、修改和删除操作。
CRecordset 类对象代表一个从数据源中获取的记录集。CRecordset 记录集有两种重
要的打开方式,分别为动态集(Dynaset)和快照集(Snapshot)。快照集(Snapshot)提供了对
数据的静态访问,就象对数据源的某些数据进行拍照一样,是静态的数据,别的用户对
数据源里数据进行添加、修改和删除的时候,快照集里面的记录不受影响,只有在调用
了 CRecordset 的 Requery 函数重新查询的时候,快照集才会产生变化。动态集提供了对
数据的动态访问,和其他用户所做的更改保持同步,当别的用户修改或删除了记录集中
的记录时,会在动态集中反映出来。
CRecordView 类对象提供了一个表单视图来显示和操作记录集,因为 CRecordView
类派生于 CFormView 类,同时又绑定了一个记录集,从而可以利用表单视图方便的显
示、修改、添加和删除记录。CRecordView 采用对话框数据交换技术(DDX)和记录字段
交换技术(RFX)自动实现表单控件中的数据和数据库中的字段数据的关联。在 2.2.8 一节
中将详细介绍 CRecordView 的使用方法。
CDBException 类对象处理 MFC ODBC 访问类在操作数据库的时候发生的异常,它
继承于 CException 类。MFC ODBC 类在操作数据库的时候会抛出 CDBException 异常,
这些异常一定要处理,否则程序会不正常中止,给用户带来不便甚至带来巨大的损失。
第 2 章 Visual C++数据库开发技术介绍
• 31 •
2.2.2 ODBC 数据源的配置
在利用 MFC ODBC 开发数据库应用程序的时候,需要配置 ODBC 数据源。可以利
用 ODBC 数据源管理器添加、修改和删除数据源。
如图 2-1 所示,选择“开始”|“程序”|“管理工具”|“数据源(ODBC)”命令,或
者打开控制面板中管理工具栏下的数据源(ODBC),弹出“ODBC 数据源管理器”对话
框,选择“系统 DSN”选项卡,如图 2-2 所示。
图 2-1 ODBC 数据源菜单示意图
图 2-2 ODBC 数据源管理器页面
单击“添加”按钮,弹出“创建新数据源”的对话框,从驱动程序列表中选择 Oracle
in OraHome90 选项,如图 2-3 所示。
Visual C++与 Oracle 数据库编程案例
• 32 •
图 2-3 选择驱动程序页面
单击“完成”按钮,进入 Oracle ODBC Driver Configuration 对话框,在 Data Source
Name 文本框中输入要配置的数据源名称 ORADB(名称可任意),在 TNS Service Name 下
拉列表框中输入 ORADB(就是本地服务名,也可以单击 TNS Service Name 下拉列表框
右边的下三角按钮,从中选取本地服务名 OraDB),如图 2-4 所示。
图 2-4 Oracle ODBC 数据源配置页面
单击 Test Connection 按钮,弹出 Oracle ODBC Driver Connect 对话框。Service Name
为 ORADB,在 User Name 文本框中输入 System,在 Password 文本框中输入 james,如
图 2-5 所示。
剩余51页未读,继续阅读
资源评论
- WFMSF2013-07-24这类文档真心不错,搞数据库的人都知道,数据库的问题一大堆,如果能有一份综合问题文档该多好啊!求资源。。
- ttyyuu20112013-11-28文档与标题严重不符。 只是ODBC和ADO的一些超简单的说明,和sql server有个毛线关系。
- qingjiaoqingjiao2013-12-27很好的总结,谢谢分享!
- maguangjie2014-09-09讲得是很实用的方法,很好,很有用。
- hht201_cen2013-09-06很好,很详细,有ODBC和ADO的介绍,适合初学者
zhengfuzhe1124
- 粉丝: 3
- 资源: 19
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功