MFC ADO查询Access数据库的有关问题
MFC ADO查询Access数据库的问题
try {
CString strSQL;
strSQL.Format(_T("select * from SignInfo where SDay='%s'"),strtime);
m_pRecordset->Open(strSQL.GetBuffer(), // 查询表中符合物理卡号的所有纪录 m_pConnection.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);
}
catch(_com_error *e)
{
MessageBox(e->ErrorMessage());
}
在调试的时候open语句总是出错,系统总是说未经处理的异常在_com_error处,然后系统就崩溃,有哪位大侠知道该怎么解决啊。小弟研究了好长时间也解决不了了
------解决方案--------------------
异常捕获改成这样试试,可以先用这个软件测试下SQL。
try {
CString strSQL;
strSQL.Format(_T("select * from SignInfo where SDay='%s'"),strtime);
m_pRecordset->Open(strSQL.GetBuffer(), // 查询表中符合物理卡号的所有纪录 m_pConnection.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);
}
catch(_com_error *e)
{
MessageBox(e->ErrorMessage());
}
在调试的时候open语句总是出错,系统总是说未经处理的异常在_com_error处,然后系统就崩溃,有哪位大侠知道该怎么解决啊。小弟研究了好长时间也解决不了了
------解决方案--------------------
异常捕获改成这样试试,可以先用这个软件测试下SQL。
- C/C++ code
try { //你的ADO代码 } catch (_com_error& e) { CString strMsg; strMsg.Format(_T("错误描述:%s\n错误消息%s"), (LPCTSTR)e.Description(), (LPCTSTR)e.ErrorMessage()); AfxMessageBox(strMsg); }
------解决方案--------------------
把连接字符串发出来看看
------解决方案--------------------
strSQL.GetBuffer()改成strSQL