文档详情

VC++连接ACCESS数据库操作.docx

发布:2018-04-19约2.56千字共4页下载文档
文本预览下载声明
VC++对access数据库操作最近学习通过VC++对ACCESS数据库操作,网上了查了很多的资料,(我有个习惯,学习新的东西都喜欢先实现功能,然后再学习吸收。)但是发现很多都是粘贴不能直接能用的,很是纠结。发现有些都是软件更新出现的问题。比如数据库的版本问题,后面我也是帖出了注意的点。供大家参考。(至于其他的功能,说实话,我的还在蛋疼ing,等弄好。我在发个全功能的)Access数据库结构://连接数据库并且展现数据#include iostream.h//语句no_namespace说明ADO对象不使用命名空间,rename (EOF, adoEOF)说明将ADO中结束标志EOF改为adoEOF,以避免和其它库中命名相冲突。#import c:\program files\common files\system\ado\msado15.dll \no_namespace rename (EOF, adoEOF) int main(){ //使用ADO连接数据库... //--------------------------------------------------------------------------------- _ConnectionPtr m_pConnection; CoInitialize(NULL); m_pConnection.CreateInstance(__uuidof(Connection)); // 在ADO操作中建议语句中要常用try...catch()来捕获错误信息, // 因为它有时会经常出现一些想不到的错误。 try { /**连接数据库 打开本地Access库test.mdb * 12.0对应access数据库的版本的2007 * 4.0对应access数据库的版本的2003*/ m_pConnection-Open(Provider=Microsoft.ACE.OLEDB.12.0;Data Source=e:\\test.mdb;Persist Security Info=False;,,,adModeUnknown);}// 数据库路径e:\\test.mdb catch(_com_error e) { cout数据库连接失败,确认数据库test.mdb是否在当前路径下!endl; return FALSE; } //------------------------------------------------------------------------------------- //建立数据集 //-------------------------------------------------------------------------------------//声明数据库集合变量 _RecordsetPtr m_pRecordset; m_pRecordset.CreateInstance(__uuidof(Recordset)); // 在ADO操作中建议语句中要常用try...catch()来捕获错误信息, // 因为它有时会经常出现一些意想不到的错误。 try { m_pRecordset-Open(SELECT * FROM test, //是数据查询字符串(即所谓的SQL语句)//通常这些语句分为 数据的查询(select),插入(insert)//更新(update),删除(delect)//是否能执行这个命令是由前面(1)确定的 m_pConnection.GetInterfacePtr(), // 获取库接库的IDispatch指针 adOpenDynamic, //动态光标。所有数据库的操作都会立即在各用户记录集上反应出来 adLockOptimistic,//乐观锁定方式。只有在你调用Update方法时才锁定记录。在此之//前仍然可以做数据的更新、插入、删除等动作 adCmdText); //查询出来的数据是显示在控制台里的 } catch(_com_error *e) { //AfxMessageBox(e-ErrorMessage()); coute-ErrorMessage()endl; }//-------------------------------------------------------------------------------------- //读取数据 //-----------------------------------------------------------------------
显示全部
相似文档