我使用ADO,试过用一个
_ConnectionPtr m_pConnection;
两个
_RecordsetPtr m_pRecordset;
_RecordsetPtr m_pRecordset1;
然后这样连接
hr = m_pRecordset.CreateInstance("ADODB.Recordset");
hr = m_pRecordset->putref_ActiveConnection(m_pConnection);
hr = m_pRecordset1.CreateInstance("ADODB.Recordset1");
hr = m_pRecordset1->putref_ActiveConnection(m_pConnection);
编译和链接都没问题,但运行则有问题
我再创建一个 _ConnectionPtr m_pConnection1;
然后这样连接
hr = m_pRecordset.CreateInstance("ADODB.Recordset");
hr = m_pRecordset->putref_ActiveConnection(m_pConnection);
hr = m_pRecordset1.CreateInstance("ADODB.Recordset1"); hr = m_pRecordset1->putref_ActiveConnection(m_pConnection1);
问题依旧。我的两个_ConnectionPtr都是连到同一个数据库的。
我需要在一个数据库里用两个_RecordsetPtr,请问用什么办法解决 ?
解决方案 »
- opencv图像旋转
- 紧急求助:ADO访问加密后的Access数据库,带有安全机制文件,出错
- 【窗口分割问题】如何在MDI中的子窗口中进行窗口分割,而关闭此子窗口后能根据选择的菜单项再次正常地创建该分割好的子窗口???
- 各位大侠,内存映射文件问题>>
- 高分求助,up者有分!!!
- 如何判断一个路径下的文件是否存在?
- 现在碰到一个难题,不知如何在VC中实现VB中的DateAdd函数,请各位指教!详情请进
- 女孩,请带上你的钱包(转)
- 串口通讯的问题(writefile成功 ,可是readfile得不到结果),
- vc中Tab控件,我就是没弄明白
- 哪位老兄有《windows 2000环境下visual c++编程》(英文:《Mastering Windows 2000 Programming With Visual C++》)的随书光盘例子??
- 我的word怎么看不见pdf的两个按钮?
是不是有错?“ADODB.Recordset1” ??我觉得应该改成ADODB.Recordset
try
{
m_pConnection.CreateInstance("ADODB.Connection");
m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=MyDB.mdb","","",adModeUnknown);
}
catch(_com_error e)///捕捉异常
{
AfxMessageBox(e.ErrorMessage ());
}
_RecordsetPtr MySet_Ip,MySet_Port,MyRvoice,MyRchanel;
try
{
MySet_Ip.CreateInstance("ADODB.Recordset");
MySet_Ip=m_pConnection->Execute ("SELECT Server_Ip FROM t_Server_Config",&RecordsAffected,adCmdText);
MySet_Port.CreateInstance("ADODB.Recordset");
MySet_Port=m_pConnection->Execute ("SELECT Server_Port FROM t_Server_Config",&RecordsAffected,adCmdText);
MyRvoice.CreateInstance("ADODB.Recordset");
MyRvoice=m_pConnection->Execute ("SELECT Record_Voice FROM t_Record_Voice",&RecordsAffected,adCmdText);
MyRchanel.CreateInstance("ADODB.Recordset");
MyRchanel=m_pConnection->Execute ("SELECT Record_Chanel FROM t_Record_Voice",&RecordsAffected,adCmdText);
}
catch(_com_error e)
{
AfxMessageBox(e.ErrorMessage());///显示错误信息
} _variant_t Holder_Ip,Holder_Port,Holder_Rvoice,Holder_Rchanel;
try
{
handldata();
}
catch
{
AfxMessageBox(e.ErrorMessage());///显示错误信息
} MySet_Ip->Close ();
MySet_Port->Close();MyRvoice->MoveFirst ();
MyRchanel->MoveFirst ();
MyRvoice->Close ();
MyRchanel->Close();m_pConnection->Close();这是我完成的一个项目中的部分代码,全部调试通过,没有问题的。