VC连接ACCESS数据库的代码
《VC连接ACCESS数据库的代码》由会员分享,可在线阅读,更多相关《VC连接ACCESS数据库的代码(6页珍藏版)》请在装配图网上搜索。
1、VC连接ACCESS数据库的代码 2007-02-07 21:17:51 编辑 删除 #include stdafx.h#include #import c:program filescommon filessystemadomsado15.dll no_namespace rename (EOF, adoEOF) int main() /使用ADO连接数据库. /- _ConnectionPtr m_pConnection; CoInitialize(NULL); m_pConnection.CreateInstance(_uuidof(Connection); / 在ADO操作中建议语句中
2、要常用try.catch()来捕获错误信息, / 因为它有时会经常出现一些想不到的错误。 try / 打开本地Access库db1.mdb m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb,adModeUnknown); catch(_com_error e) cout数据库连接失败,确认数据库db1.mdb是否在当前路径下!Open(SELECT * FROM Home2, m_pConnection.GetInterfacePtr(), / 获取库接库的IDispatch指针 adOpenDyna
3、mic, adLockOptimistic, adCmdText); catch(_com_error *e) /AfxMessageBox(e-ErrorMessage(); coutErrorMessage()BOF) m_pRecordset-MoveFirst(); else cout表内数据为空adoEOF) var = m_pRecordset-GetCollect(ID); if(var.vt != VT_NULL) strID= _com_util:ConvertBSTRToString(_bstr_t)var); /_variant_t转字符串 var = m_pRecord
4、set-GetCollect(X); if(var.vt != VT_NULL) strX=_com_util:ConvertBSTRToString(_bstr_t)var); var = m_pRecordset-GetCollect(Y); if(var.vt != VT_NULL) strY=_com_util:ConvertBSTRToString(_bstr_t)var); coutstrIDisstrX strYMoveNext(); catch(_com_error *e) coutErrorMessage()Close(); m_pRecordset = NULL; /- /
5、关闭数据库连接 /- if(m_pConnection-State) m_pConnection-Close(); m_pConnection= NULL; return 0;关于VC+连接ACCESS2008-04-04 11:51分类:技术文章 字号: 大大 中中 小小 我做的毕业设计就是用VC写个串口通讯程序(基于IEC 8705101协议),要求要将发送和接受的数据保存起来,开始我用TXT保存的,可是老师说要用ACCESS保存,哎那就用吧。多学点东西,呵呵vc+连接access的方法有三种,据说采用ADO方法最简单。于是我在网上找了好久,找到了好多可是就是没一个可以用的。很是郁闷那,都
6、是些不负责任的人,也不测试一下,就知道乱发网络上面是找不到可以用的了,还是到图书馆去看看吧。哈哈哈终于找到了一本比较简单的,其实很多这样的书啊。VC+连接ACCESS方法(VC+6.0测试通过)首先要设置好数据源,这个简单,网上有,说的差不多都对。还有就是用ACCESS建立一个数据库文件*.MDB的,设置好表,字段等1、在stdafx.h里面包含#import C:program filescommon filessystemadomsado15.dllno_namespace rename(EOF,adoEOF)#include 2、定义两个变量指针_ConnectionPtr m_pCon
7、nect;_RecordsetPtr m_pRecordset;其实在第一步做完后有三个指针可以用分别是_ConnectionPtr_RecordsetPtr_CommandPtr3、初始化在初始化函数里面添加如下代码:CoInitialize(NULL);m_pConnect.CreateInstance(_uuidof(Connection);m_pRecordset.CreateInstance(_uuidof(Recordset);m_pConnect-Open(test,0); /test是在次之前设置好的数据源4、向ACCESS插入数据CString strsql=SELECT *
8、FROM com;BSTR bstrSQL=strsql.AllocSysString();/CString转换为BSTRm_pRecordset-Open(bstrSQL,(IDispatch*)m_pConnect,adOpenDynamic,adLockOptimistic,adCmdText);m_pRecordset-AddNew();/添加新记录m_pRecordset-PutCollect(time,_variant_t(test); /time是字段名称,test是存入time字段里面的数据/因为这里time被我设置为CString类,“test”可以用CString类变量替代,下同m_pRecordset-PutCollect(content,_variant_t(test);m_pRecordset-Update();/使插入生效,就是更新m_pRecordset-Close();/关闭
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。