您的当前位置:首页正文

VC中ADO操作Access数据库的实现

来源:汇意旅游网
计算机光盘软件与应用 软件设计开发 Computer CD Software and Appl ications 2010年第1O期 VC中ADO操作Access数据库的实现 陈祖义,陶忠刚 (空军第一航空学院,河南信阳454000) 摘要:本文简要介绍了在VC6.0中使用ADO操作Access数据库的基本步骤和程序代码的实现,并列举出了关键的 实例代码。 关键词:ADO;VC6.0;Access;Recordset 中图分类号:TP311.56 文献标识码:A 文章编号:1007—9599(2010)10—0150—01 The Implementation of ADO Operates Access Database in VC Chen Zuyi,Tao Zhonggang (First Aviation Institute of Air Force,Xinyang 464000,China) Abstract:This paper describes the operation in VC6.0 Access database using ADO and the basic steps of hte implementation code,parallel hte key real—example code. Keywords:ADO;VC6.0;Access;Recordset 前不久在VC6.0环境下做了一个简单的“基金利润自动计算 m ̄recordset一>Open r SELECT FROM fund 系统”,系统的主界面如图1所示。系统采用了ADO操作 Access数据库,ADO操作数据库的基本流程为:依据功能要求建 m ̄connection.GetInterfacePtr 0, 立数据库和数据表;引入ADO库定义文件;初始化COM库;用 adOpenDynami C, Connection对象连接数据库;通过Connection、Command对象执 adLock0ptimistiC 行SQL命令,或利用Recordset对象取得结果记录集进行查询、 adCmdText): 处理;关闭数据库的连接并释放对象。 ) l曩——■囊——●———●●●●●●■●口 ;辫 ;: ; :篇 辫茹  catch(tom error e) l { MessageBox(e一>ErrorMessage()): ) ~ 麓 … } l ~一 … 一 在对话框应用程序中添加“添加”按扭的事件处理函数 I一 I…… … OnButtonAdd0,并在此函数中添加如下代码以实现添加记录的功 … ㈣, “ 一 I 0 一 黜_ 能,其中m—no、re_name,m_past为基金名称,基金代码和购买时 图1基金利润自动计算系统主界面 间对应的成员变量。 一建立数据库和数据表 OnButtonAdd() 、在本例中建立了fund数据库,在数据库中建立了fund数据 表,表中共有fund no(基金代码)、fund—nanle(基金名称)、 fund pastday(基金购买时间)等l2个字段。 UpdateData 0 二、引入ADO库定义文件 Try 引入ADO库定义文件的方法是在stdafx.h头文件中使用预处 { 理指令,代码如下: m precordset一>AddNew 0:  ̄import C:\Program Files\Common Fi1es\System\AD0\ms mA ̄recordset一>PutCollect( fundno ,variantt(m_no)) adol5.dl1 nom precordset一>PutCollect( fund_name ,variant t(mname)) namespace rename( EOF , adoEOF ): 三、初始化COM库 mA ̄recordset一>PutCol lect( fundA ̄ast ,variantt(m past)) 在MFC中可以用Afx01eInit0方法,这种方法在结束时自动 m ̄recordset一>Update(): 关闭tom库。 } 四、用Connecti013对象连接数据库 catch(comerror:I=e) 在ADO库中包含ConnectionPtr、 CommandPtr和 { RecordsetPtr三个智能指针。首先,在对话框类中添加智能指 MessageBox(e一>ErrorMessage()): 针的对象变量,其次,在对话框类的初始化函数中打开数据库的 ) 连接,在0nInitDialog 0中添加如下代码:m pconnection.Creat read0: eInstance(uuidof(Connection)): ) try 添加“删除”按扭的事件处理函数OnButtonDelete 0,由于 { 篇幅代码省略。 mpconnection一>Open( Provider=Microsoft.Jet.OLEDB.4 添加“修改”按扭的事件处理函数0nButtonModify(),并在 0:Data Source=fund.mdb , , ,adModeUnknown): 其中添加如下代码: } OnButtonModify() catch(tom error e) { f OnButtonDelete 0: MessageBox( 数据库连接失败,确认数据库fund.mdb是否 OnButtonAdd 0 在当前路径下! ): ) 六、关闭数据库的连接并释放对象 ) 在关闭应用程序的时候,要关闭数据库的连接并释放对象, 五、通过Recordset对象取得结果记录集进行操作 本例实现方法是重写OnDestroy0虚函数,由于篇幅代码省略。 通过Recordset对象对结果记录集进行操作,需要打开数据 参考文献: 库中的数据表。操作可以放在对话框的初始化函数 【1】郑阿奇.VISUAL c++教程.清华大学出版社,2005,1 OnInitDialog0中完成,代码如下: 【2】李闽溟.VISUAL c++6.0数据库系统开发实例导航.人民邮电出 版社,2002,10 【3】赵辉.VISUALc++系统开发实例精粹.人民邮电出版社,2005,8 

因篇幅问题不能全部显示,请点此查看更多更全内容