8 个解决方案
#1
百度下 "ADO"
#2
留个邮箱,我有一个自己总结写的c++ ADO连接数据库的类,发给你参考参考
#3
lj2zj1989@163.com
#4
已经发送了,请接收
#5
有问题可以交流
#6
#7
我连好了 谢谢 但是有新问题 就是我想用一个combo Box 点击button查询符合条件的数据 显示在listcontrol中 我写的代码显示不出来
void CtestAccessDlg::OnBnClickedButton5()
{
CString key;
CString sql;
CoInitialize(NULL);
int i=0;
GetDlgItem(IDC_COMBO1)->GetWindowText(key);
if(key==""){
AfxMessageBox(L"请输入查询字段");
}
else{
sql.Format(L"SELECT * FROM ModInfo WHERE Station=%d",key);
BSTR str=sql.AllocSysString();
m_pRecordset.CreateInstance("ADODB.Recordset");
m_pRecordset->Open(str,
_variant_t((IDispatch*)m_pConnection,true),
adOpenStatic,
adLockOptimistic,
adCmdText);
while(!this->m_pRecordset->adoEOF)
{
//CString strPNum,strNModNum,strVol,strCur,strTemp,strStation,strID;
_variant_t pnum,modnum,vol,cur,temp,station,mid;
pnum=m_pRecordset->GetCollect("PNum");
modnum=m_pRecordset->GetCollect("NModNum");
vol=m_pRecordset->GetCollect("Vol");
cur=m_pRecordset->GetCollect("Cur");
temp=m_pRecordset->GetCollect("Temp");
station=m_pRecordset->GetCollect("Station");
mid=m_pRecordset->GetCollect("ID");
m_DB_List.InsertItem(i, L"VC++"); //插入行
m_DB_List.SetItemText(i,0,pnum); //设置数据
m_DB_List.SetItemText(i,1,modnum);
m_DB_List.SetItemText(i,2,vol);
m_DB_List.SetItemText(i,3,cur);
m_DB_List.SetItemText(i,4,temp);
m_DB_List.SetItemText(i,5,station);
m_DB_List.SetItemText(i,6,mid);
m_pRecordset->MoveNext();
i++;
}
m_pRecordset->Close();
m_pRecordset=NULL;
}
}
我能取到key的值 但是只能显示数据库全部的内容,但是不能显示key值的内容?那个我看有的写的是m_pConnection->Execute 我感觉我写的open不太对
void CtestAccessDlg::OnBnClickedButton5()
{
CString key;
CString sql;
CoInitialize(NULL);
int i=0;
GetDlgItem(IDC_COMBO1)->GetWindowText(key);
if(key==""){
AfxMessageBox(L"请输入查询字段");
}
else{
sql.Format(L"SELECT * FROM ModInfo WHERE Station=%d",key);
BSTR str=sql.AllocSysString();
m_pRecordset.CreateInstance("ADODB.Recordset");
m_pRecordset->Open(str,
_variant_t((IDispatch*)m_pConnection,true),
adOpenStatic,
adLockOptimistic,
adCmdText);
while(!this->m_pRecordset->adoEOF)
{
//CString strPNum,strNModNum,strVol,strCur,strTemp,strStation,strID;
_variant_t pnum,modnum,vol,cur,temp,station,mid;
pnum=m_pRecordset->GetCollect("PNum");
modnum=m_pRecordset->GetCollect("NModNum");
vol=m_pRecordset->GetCollect("Vol");
cur=m_pRecordset->GetCollect("Cur");
temp=m_pRecordset->GetCollect("Temp");
station=m_pRecordset->GetCollect("Station");
mid=m_pRecordset->GetCollect("ID");
m_DB_List.InsertItem(i, L"VC++"); //插入行
m_DB_List.SetItemText(i,0,pnum); //设置数据
m_DB_List.SetItemText(i,1,modnum);
m_DB_List.SetItemText(i,2,vol);
m_DB_List.SetItemText(i,3,cur);
m_DB_List.SetItemText(i,4,temp);
m_DB_List.SetItemText(i,5,station);
m_DB_List.SetItemText(i,6,mid);
m_pRecordset->MoveNext();
i++;
}
m_pRecordset->Close();
m_pRecordset=NULL;
}
}
我能取到key的值 但是只能显示数据库全部的内容,但是不能显示key值的内容?那个我看有的写的是m_pConnection->Execute 我感觉我写的open不太对
#8
大神 也给我发一份呗 654995150@qq.com
#1
百度下 "ADO"
#2
留个邮箱,我有一个自己总结写的c++ ADO连接数据库的类,发给你参考参考
#3
lj2zj1989@163.com
#4
已经发送了,请接收
#5
有问题可以交流
#6
#7
我连好了 谢谢 但是有新问题 就是我想用一个combo Box 点击button查询符合条件的数据 显示在listcontrol中 我写的代码显示不出来
void CtestAccessDlg::OnBnClickedButton5()
{
CString key;
CString sql;
CoInitialize(NULL);
int i=0;
GetDlgItem(IDC_COMBO1)->GetWindowText(key);
if(key==""){
AfxMessageBox(L"请输入查询字段");
}
else{
sql.Format(L"SELECT * FROM ModInfo WHERE Station=%d",key);
BSTR str=sql.AllocSysString();
m_pRecordset.CreateInstance("ADODB.Recordset");
m_pRecordset->Open(str,
_variant_t((IDispatch*)m_pConnection,true),
adOpenStatic,
adLockOptimistic,
adCmdText);
while(!this->m_pRecordset->adoEOF)
{
//CString strPNum,strNModNum,strVol,strCur,strTemp,strStation,strID;
_variant_t pnum,modnum,vol,cur,temp,station,mid;
pnum=m_pRecordset->GetCollect("PNum");
modnum=m_pRecordset->GetCollect("NModNum");
vol=m_pRecordset->GetCollect("Vol");
cur=m_pRecordset->GetCollect("Cur");
temp=m_pRecordset->GetCollect("Temp");
station=m_pRecordset->GetCollect("Station");
mid=m_pRecordset->GetCollect("ID");
m_DB_List.InsertItem(i, L"VC++"); //插入行
m_DB_List.SetItemText(i,0,pnum); //设置数据
m_DB_List.SetItemText(i,1,modnum);
m_DB_List.SetItemText(i,2,vol);
m_DB_List.SetItemText(i,3,cur);
m_DB_List.SetItemText(i,4,temp);
m_DB_List.SetItemText(i,5,station);
m_DB_List.SetItemText(i,6,mid);
m_pRecordset->MoveNext();
i++;
}
m_pRecordset->Close();
m_pRecordset=NULL;
}
}
我能取到key的值 但是只能显示数据库全部的内容,但是不能显示key值的内容?那个我看有的写的是m_pConnection->Execute 我感觉我写的open不太对
void CtestAccessDlg::OnBnClickedButton5()
{
CString key;
CString sql;
CoInitialize(NULL);
int i=0;
GetDlgItem(IDC_COMBO1)->GetWindowText(key);
if(key==""){
AfxMessageBox(L"请输入查询字段");
}
else{
sql.Format(L"SELECT * FROM ModInfo WHERE Station=%d",key);
BSTR str=sql.AllocSysString();
m_pRecordset.CreateInstance("ADODB.Recordset");
m_pRecordset->Open(str,
_variant_t((IDispatch*)m_pConnection,true),
adOpenStatic,
adLockOptimistic,
adCmdText);
while(!this->m_pRecordset->adoEOF)
{
//CString strPNum,strNModNum,strVol,strCur,strTemp,strStation,strID;
_variant_t pnum,modnum,vol,cur,temp,station,mid;
pnum=m_pRecordset->GetCollect("PNum");
modnum=m_pRecordset->GetCollect("NModNum");
vol=m_pRecordset->GetCollect("Vol");
cur=m_pRecordset->GetCollect("Cur");
temp=m_pRecordset->GetCollect("Temp");
station=m_pRecordset->GetCollect("Station");
mid=m_pRecordset->GetCollect("ID");
m_DB_List.InsertItem(i, L"VC++"); //插入行
m_DB_List.SetItemText(i,0,pnum); //设置数据
m_DB_List.SetItemText(i,1,modnum);
m_DB_List.SetItemText(i,2,vol);
m_DB_List.SetItemText(i,3,cur);
m_DB_List.SetItemText(i,4,temp);
m_DB_List.SetItemText(i,5,station);
m_DB_List.SetItemText(i,6,mid);
m_pRecordset->MoveNext();
i++;
}
m_pRecordset->Close();
m_pRecordset=NULL;
}
}
我能取到key的值 但是只能显示数据库全部的内容,但是不能显示key值的内容?那个我看有的写的是m_pConnection->Execute 我感觉我写的open不太对
#8
大神 也给我发一份呗 654995150@qq.com