刚玩VC 各位大侠多指教,先谢谢了!!! 在使用DataGrid显示数据时,用了以下代码,运行时出错(指示:The rowset is not bookable)。
但是用ListBox控件显示没有问题,证明数源也连上了。不知道为什么,请高手指点。 _RecordsetPtr m_pRs;
_ConnectionPtr m_pConn; ::CoInitialize(NULL);
m_pConn.CreateInstance(__uuidof(Connection));
m_pRs.CreateInstance(__uuidof(Recordset));
m_pConn->ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=data.mdb;Persist Security Info=False";
m_pConn->Open("","","",adConnectUnspecified);
m_pRs->Open("select * from datatable",_variant_t((IDispatch*)m_pConn),
adOpenDynamic,adLockOptimistic,adCmdText);
if(m_pRs==NULL)
{
MessageBox("数据为空");
}
else
{
m_ctrlDG.SetRefDataSource((LPUNKNOWN)m_pRs);
// m_ctrlDG.SetRefDataSource(m_pRs);
}
m_pConn->Close();
m_pConn.Release();
m_pRs.Release(); ::CoUninitialize();
选择DataGrid控件时我的是[SP3],网上介绍的都是[sp6]。这会不会影响运行结果?
运行时的错误指示:
但是用ListBox控件显示没有问题,证明数源也连上了。不知道为什么,请高手指点。 _RecordsetPtr m_pRs;
_ConnectionPtr m_pConn; ::CoInitialize(NULL);
m_pConn.CreateInstance(__uuidof(Connection));
m_pRs.CreateInstance(__uuidof(Recordset));
m_pConn->ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=data.mdb;Persist Security Info=False";
m_pConn->Open("","","",adConnectUnspecified);
m_pRs->Open("select * from datatable",_variant_t((IDispatch*)m_pConn),
adOpenDynamic,adLockOptimistic,adCmdText);
if(m_pRs==NULL)
{
MessageBox("数据为空");
}
else
{
m_ctrlDG.SetRefDataSource((LPUNKNOWN)m_pRs);
// m_ctrlDG.SetRefDataSource(m_pRs);
}
m_pConn->Close();
m_pConn.Release();
m_pRs.Release(); ::CoUninitialize();
选择DataGrid控件时我的是[SP3],网上介绍的都是[sp6]。这会不会影响运行结果?
运行时的错误指示:
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货