希望高手指点 万分感谢!怎么回事,SQL查询不出来啊。
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置select语句
_bstr_t vSQL;
vSQL="SELECT * FROM 123";
//执行select语句
_RecordsetPtr m_pRecordsetPatentTable;
m_pRecordsetPatentTable=m_AdoConn.GetRecordSet(vSQL);
_variant_t var;
CString m_strFieldName[2]={"problem","solution"};
CString m_patent[2];
m_pRecordsetPatentTable->MoveFirst();
while (!m_pRecordsetPatentTable->adoEOF)
{
var=m_pRecordsetPatentTable->GetCollect(_variant_t("patentID"));
if(atoi((LPCSTR)_bstr_t(var))==app->patent_SearchID1)
{
for (int i=0;i<2;i++)
{
var=m_pRecordsetPatentTable->GetCollect(_variant_t(m_strFieldName[i]));
m_patent[i]=atoi((LPCSTR)_bstr_t(var));
}
}
m_pRecordsetPatentTable->MoveNext();
}
//////////////////////////////////////////m_patent[1]
//将问题描述,方案描述,传给对话框控件显示
SetDlgItemText(IDC_CASEPROBLEM_DESCRIP,m_patent[0]);
SetDlgItemText(IDC_PATENT_CASESOLUTION,m_patent[1]);
// TODO: Add extra initialization here
m_AdoConn.ExitConnect();
return TRUE;
------解决方案--------------------m_pRecordsetPatentTable->MoveFirst(); 记录集是否为空,空的时候不能使用这条语句。
你可以调试一下,看看具体运行到那一条语句崩溃的
------解决方案--------------------你这个应该去C++专区问
------解决方案--------------------vSQL="SELECT * FROM 123";
楼主表名是"123"?
------解决方案--------------------
修改为:
SELECT * FROM [123]
------解决方案--------------------