ado访问access数据库表的问题

tanghuibala 2007-07-31 04:31:06
我在程序中用如下语句
_ConnectionPtr pCn;
_RecordsetPtr pRs;
CString strSQL;
pCn.CreateInstance("ADODB.Connection");
pCn->Open("DataSource=HistoryDB","","",adModeUnknown);
pRs.CreateInstance("ADODB.Recordset");
strSQL="select count(*) from MSysObjects";
pRs=pCn->Execute(_bstr_t(strSQL),NULL,adCmdText);
总是会出现运行时错误,不知道什么原因,请大侠指教一二
...全文
160 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
cayido 2007-08-01
  • 打赏
  • 举报
回复
你先抓错啊
try
{}
catch(_com_error_ &e)
{
}
把错误提出来
估计是你SQL语法问题
  • 打赏
  • 举报
回复
pCn.CreateInstance(__uuidof(Connection))
try
{
pCn->Open("Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=HistoryDB.mdb","","",adModeUnknown);
}
catch(_com_error e)
{
MessageBox("XXXXX");
return FALSE;
}
pRs.CreateInstance(__uuidof(Recordset));
try
{
m_pRecordset->Open("SELECT * FROM MSysObjects", pRs.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);
}

catch(_com_error e)
{
MessageBox("XXXX");
return FALSE;
}


tanghuibala 2007-07-31
  • 打赏
  • 举报
回复
strSQL="select count(*) from MSysObjects";
pRs=pCn->Execute(_bstr_t(strSQL),NULL,adCmdText);
这里出错了,好像无法访问这个MSysObjects表
handsomerun 2007-07-31
  • 打赏
  • 举报
回复
运行到哪出错了,跟踪一下,
另外,try catch一下,是在哪出的错
tanghuibala 2007-07-31
  • 打赏
  • 举报
回复
照楼上说的改了,还是运行不了,一样的问题
handsomerun 2007-07-31
  • 打赏
  • 举报
回复

pCn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=.\\DataBase\\aa.mdb","","",adModeUnknown);


这里,这个aa文件在当前目录下的DataBase文件夹下

4,017

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧