欢迎来到天天文库
浏览记录
ID:32629166
大小:56.65 KB
页数:6页
时间:2019-02-13
《visualc用ado操作access数据库方法探析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、VisualC卄用ADO操作Access数据库方法探析一、引言数据库在日常生活生产中大量使用,也出现了各种数据库管理系统如ACCESS.SQLSERVER.ORACLE等。但这些数据管理系统不能开发出适合人们应用的Windows应用程序。而VC能将关系数据库和OOP(面向对象)编程方法结合起来,做出具有强大的数据管理能力和灵活适用的应用程序。VC操纵数据库的常用方法有ODBC、DAO、ADO、OLEDB等几种方法,其中最适合教学和工程应用软件开发的是ADO的方法。ADO技术是基于OLEDB的访问技术,它继承了OLEDB的技术优点,并且将OLEDB的接口作了封装,定义了ADO对象,使程序开发
2、得到简化。基于ADO技术的应用程序可以通过一致的接口来访问各种各样的数据,不需要关心数据存放位置,也不需要进行数据转移、复制、转换,在实现分布式数据库应用上有很大的优势。下面通过一个简易学生管理程序来叙述VC用ADO方式操纵Access数据库的方法,和开发数据库应用程序的基本过程。二、程序实现代码及步骤1、创建ACCESS数据库在Access2000中创建一个数据库dbl,并创建一个数据表stu,添加2个字段(xh,文本型,字段大小10)(xm,文本型,字段大小10)。输入几条记录用于读写测试。2、创建基于对话框的应用程序用APPWizard创建一个基于对话框的应用程序Adodb2010o
3、3、引入ADO函数库在Stdafx.h结尾处添加引入msadol5.dll的语句。^import"msadol5.dllmsadol5.dll"no_namespacerename("EOF",”adoEOF")rename(”BOF”,”adoBOF”)4、在窗体上放置控件在对话框上放置相应的各控件。5、连接数据库和数据表在初始化函数中连接数据库和数据表。代码如下:CStringstrname;strname・Format(”Provider=Microsoft.Jet.OLEDB.4.0;DataSource二dbl.mdb;”,”“,”“,adModeUnknown);AfxOlel
4、nit();AfxEnableControlContainer();m_pConnection.Createlnstance(”ADODB.Connection^);_bstr_tstrConnect二strname;mpConnection->Open(strConnect,”“,”“,adModeUnknown);m_pRecordset・Createlnstance(”ADODB.Recordset”);CStringsql二uSELECT*FROMstu”;m_pRecordset->Open((_variant_t)sql,m_pConnection.GetlnterfacePt
5、r(),adOpenStatic,adLockOptimistic,adCmdText);//6、各个按钮的功能函数1)voidCAdodb2010Dlg::OnButtonl(){m_pRecordset->MoveNext();if(m_pRecordset->adoEOF)m_pRecordset->MoveFirst();CStringm;m二(char*)(_bstr_t)m_pRecordset->GetCollect(”xh”);GetDlgltem(IDC_EDIT1)->SetWindowText(m);m=(char*)(_bstr_t)m_pRecordset—>Ge
6、tCollect(xm);GetDlgltem(IDC_EDIT2)->SetWindowText(m);}2)voidCAdodb2010Dlg::0nButton2(){//点击“上一条记录”显示上一条记录m_pRecordset->MovePrevious();if(m_pRecordset->adoBOF)m_pRecordset->MoveLast();}3)voidCAdodb2010Dlg::0nButton3(){sql.Formot(”select*fromstuwherexh=%,”,si);m_pRecordset->Open(_variant_t(sql),_var
7、iant_t((IDispatch*)m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);var=m_pRecordset-〉GetCollect(”xm”);m=(char*)(_bstr_t)m_pRecordset->GetCollect(xm;;GetDlgltem(IDC_EDIT2)->SetWindowText(m);4)voidCAdo
此文档下载收益归作者所有