封装ADO之MFC应用.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
封装ADO之MFC应用 作者:武鹏 下载例子源代码 Microsoft ActiveX Data Objects (ADO) 支持用于建立基于客户端/服务器和 Web 的应用程序的主要功能。其主要优点是易于使用、高速度、低内存支出和占用磁盘空间较少。 ??? 本次封装的CadoInterface类仅针对MFC的使用,目的是优化对ADO的操作,避免频繁写try catch(…)以及在连库、开表、写数据、读数据等过程中一些重复性的工作。该类仅对一些常用的操作进行封装,用户可以根据需要进行修改和扩展。 ??? 封装类主要包括:基本操作、增值操作、支持算法与支持结构。基本操作、增值操作、支持算法在AdoInterface.h与AdoInterface.cpp中声明定义,支持结构在DataBelong.h中定义。 ??? 这里主要介绍该类的应用,实现细节的说明在代码中均有注释。 一、封装类的关系 ??? ??? 图一 封装类关系图,箭头代表包含关系,用户使用时只需包含界面文件AdoInterface.h 二、基本操作部分 (一)连接数据库 CString Conn=provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb; myado.ConnecDataLibrary(Conn,,); ??? 本例连接了一个无密码的Access库,如用其他方式连接数据库,用户可自行更改连接字符串,或者以枚举方式将多种连接方式封装到本函数中。 (二)开表 myado.OpenSheet(select * from file); ??? 用户仅需给出开表条件即可,其他的枚举参数均有默认值,如用户需要以不同方式打开,则可以重新给定枚举参数的默认值。 (三)关库、关表 myado.CloseSheet(); myado.CloseDataLibrary(); (四)返回指针 myado.GetConnPtr(); myado.GetRecoPtr(); ??? 如用户的需求超出本类提供的操作时,可以通过这两个函数获取_ConnectionPtr与_RecordsetPtr指针,调用ADO的操作。 (五)属性判断 myado.BOF(); myado.adoEOF(); (六)指针的移动 ??? 5种基本的指针移动(包括:MoveFirst、MoveLast、MoveNext、MovePrevious与Move(long Num))。 (七)执行SQL语句 CString str=Delete from file where AGE=36; myado.Execute(str); (八)获得字段内容 _variant_t str; myado.GetCollect(NAME,str); CString name=str; (九)删除一条记录 myado.Delet(); ??? 默认删除当前记录,用户可根据需要修改枚举参数。 三、增值操作部分 (一)追加一条新记录 AddNewCode insert[3]; insert[0].ColName=NAME; insert[0].Value=插入一条新记录; insert[1].ColName=AGE; insert[1].Value=18; insert[2].ColName=TIME; insert[2].Value=1999/9/9; myado.AddNewRecode(insert,3); ??? 用户需要确定向该条记录的哪些字段添写数据,然后根据字段的个数定义数组(AddNewCode为支持结构)。本函数需要两个参数:支持结构的数组指针与添写字段的个数。 (二)追加一条新记录(扩展) myado.AddNewRecodeEx2(FF,NAME,小数,NUM,AGE,TIME,-2.17,查林杰,3.1415927,10,-18,1995/6/9); ??? 该函数采用了未定参数的形式(类似于CString中的Format()函数形式)。 ??? 第一个参数为要写入字段的字段名,字段名要以字符串方式给出,字段名之间用逗号分开;后面的参数为赋值参数,要与前面的字段名一一对应,赋值方式参考应用举例。 (三)获取一条记录的内容 _variant_t ColName[5]; ColName[0]=ID;ColName[1]=NAME;ColName[2]=AGE;ColName[3]=TIME;ColName[4]=HF

文档评论(0)

dashewan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档