程序设计语言VC与DAO的应用Word格式文档下载.doc
- 文档编号:13314731
- 上传时间:2022-10-09
- 格式:DOC
- 页数:2
- 大小:18.50KB
程序设计语言VC与DAO的应用Word格式文档下载.doc
《程序设计语言VC与DAO的应用Word格式文档下载.doc》由会员分享,可在线阅读,更多相关《程序设计语言VC与DAO的应用Word格式文档下载.doc(2页珍藏版)》请在冰豆网上搜索。
DAO提供了一个基本框架来创建和操纵数据库。
数据的DAO具有一个层次的对象结构,它使用MicrosoftJetDatabase来实现对数据的访问。
它支持的数据类型有MicrosoftJetDatabase,即MDB数据库。
ODBC源数据需要ODBC的相应的驱动器,可安装的ISAM数据库,如dBase、MicrosoftFoxpro等。
1)DAO主要有以下几个优点。
独立性更强。
在ODBC中,ODBC的应用需要很多部件的支持,如ODBC的相应的驱动器等。
比方说,你用VC开发了一个ODBC的应用,经编译连接后,在你的系统上可以运行。
当移动到另一个系统上时,你需要搬动很多的部件,并要对ODBC进行注册,否则你的应用还是不能正常运行。
DAO在这个方面,具有更强的独立性。
如果你的数据库应用是基于MicrosoftJetDatabase的,你甚至可以完全实现应用的独立性。
另外,ODBC需要别的数据库软件来为它创建一个数据库模板。
数据操纵功能更强。
ODBC只支持数据操纵语言DML功能,只能进行一些数据的查询等工作。
其主要功能是基于记录级的,如查询、增加删除记录等。
若要创建一个数据库、表或索引,它就无能为力了。
从功能上来看,DAO能支持ODBC的所有功能,并且它还支持逐渐定义语言(DDL)。
可以用它来创建一个数据库,也可以在数据库中增加新的表、索引、查询对象等,还可为表增加或删除域的功能。
可以说,它几乎支持所有的数据库功能。
使用更方便。
由于DAO支持数据库更多的功能,在用它编程时,更灵活、方便。
它可以直接创建和修改一个数据库,因此不需要别的软件支持。
另外,在用DAO编程时,不受基本数据库模板的限制,可以随时修改以适应应用需要。
具有OLE(嵌入式开发编程)机制。
DAO的实现是基于OLE机制的,它也是基于COM的对象部件的方式来实现对数据库的管理功能。
2)DAO的有关类别如下。
CdaoRecordset。
该类代表了从数据源查找到的一组“记录”。
它为DAO的应用完成了有关数据存储区及数据的格式等任务。
另外,它也包含了对数据源的有关查询功能。
在DAO的MFC编程中,它是交互的最主要的一个类。
CdaoDatabase。
一个CdaoDatabase对象代表了与数据库的连接,通过这个连接可以对数据库的数据进行操作,即它代表了一个数据源的作用,只是它具有对数据源更强的操作功能,它可以包含表、索引等。
CdaoTableDef。
CdaoTableDef代表了数据库中的一个表,每一个DAO数据库都维护一个表集。
CdaoQueryDef。
一个CdaoQueryDef代表了一个查询定义。
一种是临时查询对象。
这种类型的查询对象只是在查询时创建,不存储到数据库中,每次查询都必须重新创建。
另一种是永久查询。
这种类型的查询对象是与数据库存储在一起的,在需要查询时至需要从数据库中读出来就可以了。
CdaoWorkspace。
一个CdaoWorkspace对象用来管理一个用户所使用的一个数据库区。
其他类有:
CdaoException和CdaoFieldExchange类。
(二)基于组件的编程技术
创建基于对话框的ActiveX控件。
创建新的MFCActiveXControlWizard项目,取名为TestAct。
在Step2of2中取消Hasan“About”box。
②在ResourceView页中新增一对话框资源,命名为IDDDBPDIALOG,可以在对话框上放自己的控件。
设置对话框资源属性的Style页为
Style:
Child;
Border:
DialogFrame;
TitleBar:
unchecked;
设置MoreStyle页为Visible:
Check;
Control;
设置ExtendedStyle页为StaticEdge;
Check。
③为对话框资源IDDDBPDIALOG创建新类CDbpDlg,确认在TestActCtrl。
h中以加入语句#include“dbpdlg。
h”,为CTestActCtrl类添加成员变量CDbpDlgdlg。
④用ClassWizard在Automation页中为CTestActCtrl类添加一个自定义方法VoidDoDbp(),外部名亦为DoDbp。
在函数DoDbp()中添加语句dlg。
ShowWindow(SWSHOW)。
⑤用ClassWizard为CTestActCtrl添加WMCREATE的处理函数OnCreate,在CTestActCtrl:
:
OnCreate函数中写入dlg。
Create(IDDDBPDIALOG,this)。
在CTestActCtrl:
OnCreate中去除pdc—>FillRect()和pdc—>Ellipse()两行代码,添加代码dlg。
MoveWindow(rcBounds,true)。
编译此ActiveX控件,即完成了一个基于非模式对话框的组件制作。
(三)在C++中使用数据访问对象DAO和Jet引擎
DAO(DateAccessObjects)是一套简化数据库编程的OLE对象。
一个代表着数据库的Database对象包含一系列Tabledef对象,其中每一个对象都包含一系列Field对象、每个对象的属性值及实现适当功能的方法。
DAO使用一套称为Jet引擎的DLL,即MicrosoftJetDatabaseEngine。
所有这些不仅对Microsoft的*。
mdb文件提供访问,也面向其他数据库格式。
Jet包含一个强有力的查询器,这使得复杂的操作变得简单。
例如,可以查询连接到SQLServer表的MDB表,并更新查询结果视图;
创建能依次引用其他查询的已储存查询(等同于SQL视图),这些被引用的查询仍然是可更新的,能力非常强大,它减轻了开发应用程序的负担。
程序员不用编写大量繁杂的C++代码或SQL语句就能完成复杂的数据库处理任务。
DAO是以OLE自动操作双接口实现的。
MFC的DAO类(CDaoXxx)设计感觉上与MFCODBC类(CDatabase)相同,但能力有显著增强,如它可以在运行中指定字段名。
MFCDAO类与ODBC类在命名与操作上都很相似,但对于数据库操作,DAO更简便。
如果已经使用了CDatabase和CRecordset访问MDB文件或其他一些ISAM格式,那么程序员只需简单的操作就可把代码转换CDaoDatabase及CDaoRecordset。
由于DAO类最适合于编制处理Microsoft的*。
mdb数据库的应用程序,因此可利用DAO技术,结合数据库的建立,即可实现VC++应用程序中数据库的查询功能。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计语言 VC DAO 应用