急,在线等!!数据库问题

lynkoo 2006-05-19 01:58:43
各位大哥,问一个问题
用ADO+DataGrid显示数据库内容的的时候怎么让DataGrid与数据库联系起来,如下程序,最后的问号处应该添什么?
使用Ado 智能指针
_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;
CDataGrid m_DataGrid1;
//建立连接、打开数据源
...
//如何使打开的数据与DataGrid控件关联
m_DataGrid1.SetRefDataSource(?);
...全文
127 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiangrujian 2006-05-20
  • 打赏
  • 举报
回复
帮顶!
lynkoo 2006-05-19
  • 打赏
  • 举报
回复
conn->CursorLocation = adUseClient
使用这个方法就正确了,谢谢。
lynkoo 2006-05-19
  • 打赏
  • 举报
回复
按照你上面的写了,编译显示如下信息
error C2039: 'Rebind' : is not a member of 'CDataGrid'
syy64 2006-05-19
  • 打赏
  • 举报
回复
BOOL CDlgRecordset::QueryRecord()
{
_CommandPtr cmd;
_RecordsetPtr rs;
_ConnectionPtr conn;
_variant_t vra;
VARIANT *vt1 = NULL;
try
{
/* cmd.CreateInstance( __uuidof(Command));
rs.CreateInstance(__uuidof(Recordset));
conn.CreateInstance(__uuidof(Connection));*/

UpdateData(TRUE);
theApp.m_pConnection->PutCursorLocation(adUseClient);

/* conn->CursorLocation = adUseClient;

conn->Open(_bstr_t( theApp.m_pConnection.GetInterfacePtr() ), L"", L"", -1);
cmd->ActiveConnection = conn;

cmd->CommandText = (_bstr_t) m_strQuery;
cmd->CommandType = adCmdText;
rs = cmd->Execute(&vra,vt1, adCmdText);*/
/*rs->PutRefActiveConnection(theApp.m_pConnection);
rs->Open((_bstr_t)m_strQuery,
theApp.m_pConnection.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);*/
/// ((CTestDllApp*)(&theApp))->m_pConnection
/// m_pRecordset.CreateInstance(__uuidof(Recordset));

/* m_pRecordset->Open((_bstr_t)m_strQuery,
_variant_t((IDispatch*)theApp.m_pConnection, TRUE),
adOpenStatic,
adLockOptimistic,
adCmdText);*/
if(m_pRecordset->State==1)
{
m_pRecordset->Close();
}
m_pRecordset->Open((_bstr_t)m_strQuery,
theApp.m_pConnection.GetInterfacePtr(),//»ñÈ¡¿â½Ó¿âµÄIDispatchÖ¸Õë
adOpenStatic,
adLockOptimistic,
adCmdText);
/* m_DataGrid.SetRefDataSource(NULL);
m_DataGrid.SetRefDataSource((LPUNKNOWN)m_pRecordset);
m_DataGrid.Refresh();*/
}
catch (_com_error &e)
{
::MessageBox(NULL,e.Description(),"Ìáʾ",MB_OK);
}

m_DataGrid.SetRefDataSource((LPUNKNOWN)m_pRecordset);
m_DataGrid.Refresh();
UpdateData(FALSE);
//m_pRecordset->Close();
return true;

}
一条晚起的虫 2006-05-19
  • 打赏
  • 举报
回复
m_DataGrid1.SetRefDataSource(m_pRecordset);
m_DataGrid1.Rebind();

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧