在MFC中使用ADO连接ACCESS数据库

m_pConnection.CreateInstance(__uuidof(Connection)); //连接数据库ACCESS2007,access2000为Microsoft.Jet.OLEDB.4.0;
try
{
m_pConnection->Open("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=ImageRetrieval.accdb","","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox("数据库连接失败!");
}
m_pRecordset.CreateInstance(__uuidof(Recordset));
}

运行时总是提示连接数据库失败(这个数据库放在工程文件夹里了,也试过把数据库文件放进debug文件夹里,都没用),但是如果把工程--->设置--->调试里的exe路径前的debug去掉就不会提示连接数据库失败了,但是那样又无法设置断点调试了,请问下这个该怎么解决。。。谢谢大家。。。

第1个回答  2011-09-01
在StdAfx.h中导入ADO动态链接库
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace \
rename("EOF","adoEOF")rename("BOF","adoBOF")
是不是没有初始化COM啊?
if (CoInitialize(NULL)!=0)
{
AfxMessageBox("初始化COM支持库失败!");
exit(1);
}
try
{
m_pConn.CreateInstance("ADODB.Connection");
m_pConn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=***.mdb","","",adModeUnknown);
}
catch (_com_error e)
{
AfxMessageBox(e.Description());
}

m_pRs.CreateInstance(__uuidof(Recordset));本回答被提问者采纳

MFC采用ado方式连接Access数据库时,读出数据问题。
{\/\/ 打开本地Access库Demo.mdb m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Db1.mdb;User ID=Admin;Jet OLEDB:Database Password=","", "", adModeUnknown);} catch(_com_error e){ ErrorReport("数据库连接失败,确认Db1.mdb是否在当前路径下!");\/\/dlg->WriteLog...

MFC中在有ado接口连接Access数据库时数据库可以连上,但是在访问表时出现...
_variant_t("first") 换成_bstr_t("first") ,不过这个可能性不大 或者可能是你没选数据库吧,要先选定数据库才能用里面的表 试试看

MFC通过ADO连接access数据库:出现运行期错误Debug Assertion Faild还有...
你的SQL查询语句是sql.Format("SELECT * FROM students order by 学号 desc");但是遍历字段中是ID号,看一下这里有没有错!

如何在做MFC时,直接用驱动程序把我所编译的程序与access数据库...
OK“~没有问题的~使用ADO技术吧~我之前和你一样烦恼~要是做出来的软件在每台电脑上面都要配置一次~那就太麻烦啦~所以相信我ADO是可以的~对了~给你推荐一篇讲ADO技术的文章,我入门的时候就是看的它:http:\/\/www.vckbase.com\/document\/viewdoc\/?id=496,遇到问题可以找我帮忙哦~我这个做得还...

MFC:Mysql如何存储olevariant数据
直接通过ADO操作Access数据库(修改版)这里虽然是Access的,但是由于ADO是对数据库操作提供一个统一的操作接口,所以只要把ADO的连接字符串换成自己需要的数据库连接字符串就行了,其他的操作几乎都差不多。

怎么将MFC从串口获取的数据实时存储到ACCES数据库中呢
直接利用你的 ado 对象调用 sql 的 insert 指令插入记录即可。我不知道你用的什么方式(或者说什么包装类)连接的 access ,所以也无法给出具体的代码。如果可以,你可以贴出部分你连接access时的代码我看下。如果你是用原生 ado 操作的话,代码应该类似下面,注意这段代码是写完一条记录就立即就关闭的...

vc++ 基本对话框类型的MFC从哪里连接数据库
_RecordsetPtr pRst;pConn.CreateInstance("ADODB.Connection");pRst.CreateInstance("ADODB.Recordset");pConn->Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=db1.mdb","","",adModeUnknown);\/\/连接数据库,这里是用ADO连Access,与ODBC的区别就在连接字符串上 CString strSQL="Select * ...

关于MFC 用ADO连ACCESS 的问题,我快急死了!
在初始化之前定义。

利用MFC编写一个应用软件界面,利用ADO技术去访问SQL Server数据库中的表...
我给你说下我实现的过程。第一步:应用程序启动时自动加载在DATACOMBO控件显示,在窗体加载事件里写实现程序。第二步:双击DATACOMBO控件会出现一个选择后触发的事件,你在这个事件里写要在DATAGRID控件里显示对应学生的Grade表的程序,这个联表查询,再绑定数据源。不知道这个能否满足你的要求。

mfc中如何连接access数据库 求详细步骤
1) 首先要在程序中引入MFC ODBC数据库的定义文件 #include <afxdb.h> 2) 定义CDataBase数据库对象, CDataBase m_db;3) 利用CDataBase类的OpenEx函数建立和数据库的连接;m_db.OpenEx(_T("DSN=TestSQL01;"),CDatabase::noOdbcDialog);\/*这里的TestSQL01 即为步骤2中建立的数据源...

相似回答