16,471
社区成员
发帖
与我相关
我的任务
分享
_ConnectionPtr m_Connection; //连接对象
_RecordsetPtr m_Recordset; //记录集对象
m_Connection.CreateInstance(__uuidof(Connection));
m_Recordset.CreateInstance(__uuidof(Recordset));
m_Connection->Open("Provider=SQLOLEDB.1;Data Source=Acrobat;Initial Catalog=pubs;User ID=sa;PWD=;
","","",adConnectUnspecified);
.......
//已经做好了绑定的工作,但是执行下面的查询的话,总是提示错误。
//我是通过ADO提供的IADORecordBinding对象去绑定的。
//这个打开应该没有错吧!
//而且做过异常判断,没有提示连接错误啊!
m_Recordset->Open( "SELECT * FROM Employee ORDER BY lname", (_variant_t)m_Connection, adOpenStatic,
adLockOptimistic, adCmdStoredProc)
// 执行查询
_RecordsetPtr& CMyDB::GetRecordSet(CString strSql)
{
try
{
_variant_t RecordsAffected;
if( m_pRecordset->GetState() == adStateOpen)
{
m_pRecordset->Close();
}
m_pRecordset->Open((LPCTSTR)strSql,_variant_t((IDispatch*)m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
}
catch(_com_error e)
{
CString errormessage;
errormessage.Format("SQL执行失败!\r\n错误信息:%s SQL:%s",(char*)(e.Description()),(LPCTSTR)strSql);
m_strError = (LPCTSTR)e.Description();
CLog::Log(errormessage);
}
return m_pRecordset;
}
//把
m_Recordset->Open( "SELECT * FROM Employee ORDER BY lname", (_variant_t)m_Connection, adOpenStatic,
adLockOptimistic, adCmdStoredProc)
//改成
m_Recordset->Open( "SELECT * FROM Employee ORDER BY lname", (_variant_t)m_Connection, adOpenStatic,
adLockOptimistic, adCmdText)