奇怪这样只能读取数据库第一个行的数据在组合框上,在下去的值就读不进去了,我有用 x_ado.pRst->MoveNext();啊,怎么不能读取在下一条记录呢?真是怪哉
CString part_sql;
part_sql.Format("select v_part from vindicate");
x_ado.pRst = x_ado.pConn->Execute((_bstr_t)part_sql,NULL,adCmdText);
if(!x_ado.pRst->rsEOF)
{ ((CComboBox*)GetDlgItem(IDC_part))->AddString((LPCSTR)(_bstr_t)x_ado.pRst->GetCollect("v_part"));
x_ado.pRst->MoveNext();
}
CString part_sql;
part_sql.Format("select v_part from vindicate");
x_ado.pRst = x_ado.pConn->Execute((_bstr_t)part_sql,NULL,adCmdText);
if(!x_ado.pRst->rsEOF)
{ ((CComboBox*)GetDlgItem(IDC_part))->AddString((LPCSTR)(_bstr_t)x_ado.pRst->GetCollect("v_part"));
x_ado.pRst->MoveNext();
}
改成 if(!x_ado.pRst->rsEOF()) 或者 if(!(x_ado.pRst->rsEOF())) 试试
part_sql.Format("select v_part from vindicate");
x_ado.pRst = x_ado.pConn->Execute((_bstr_t)part_sql,NULL,adCmdText);
x_ado.pRst->MoveFirst();
while(!x_ado.pRst->rsEOF)
{ ((CComboBox*)GetDlgItem(IDC_part))->AddString((LPCSTR)(_bstr_t)x_ado.pRst->GetCollect("v_part"));x_ado.pRst->MoveNext();
}