问个比较简单的问题吧,mfc主界面显示数据库中的所有信息怎么用

access中不是建立一个表吗我想直接显示所有记录还有表示很无语... access中不是建立一个表吗 我想直接显示所有记录 还有表示很无语 展开
 我来答
何处淬吴钩
推荐于2016-04-26 · TA获得超过5045个赞
知道大有可为答主
回答量:2947
采纳率:50%
帮助的人:2418万
展开全部
#include <afxdb.h>
1、建立CDatabase对象与数据库绑定:
CDatabase m_db;
CString strDriver = _T("MICROSOFT ACCESS DRIVER (*.mdb)");
CString strDsn;
CString strFile = _T("c:\\PartsManager.mdb");
strDsn.Format(_T("ODBC;DRIVER={%s};UID=sa;PWD=;DBQ=%s"),strDriver,strFile);
if(!m_db.Open(NULL,false,false,strDsn))
{
AfxMessageBox(_T("连接数据库失败!"));
return FALSE;
}
2、建立与m_db绑定的CRecordset对象,并逐条读取记录:

CRecordset rs(&m_db);
CString strSql = _T("select * from partsdata");
CString strData;
CString str;
if(!rs.Open(CRecordset::forwardOnly,strSql,CRecordset::readOnly))
{
AfxMessageBox(_T("打开数据表失败!"));
return;
}

while(!rs.IsEOF())
{//逐个读取记录字段
rs.GetFieldValue(_T("time"),strData);//读取数据库内容的代码
m_listInfo.InsertItem(0,strData);
rs.GetFieldValue(_T("value"), strData);
rs.GetFieldValue(_T("uplimit"), strData);
m_listInfo.SetItemText(0,UPLIMIT,strData);
rs.GetFieldValue(_T("lowlimit"), strData);
m_listInfo.SetItemText(0,LOWLIMIT,strData);
rs.GetFieldValue(_T("passed"), strData);
……
rs.MoveNext();
}
rs.Close();

该修改哪里自己知道吧?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式