在线求一段程序:CLISTBOX和DAO ACCESS数据库,帮顶也有分,晚上就揭帖
使用DAO方式操作ACCESS数据库
使用的是对话框进行
希望在初始化对话框的时候
能够根据ACCESS中表的字段来配置LISTBOX控件
然后再把数据库中的各个记录读取出来添加到LISTBOX控件中
帮助顶的也有分相赠
解决问题还可以增分
今天晚上就揭帖
问题点数:20、回复次数:6Top
1 楼newKoala(金猪宝贝)回复于 2003-12-01 12:44:49 得分 0
自己顶一下Top
2 楼icer202(icer202)回复于 2003-12-01 16:35:05 得分 10
SDWORD cb;
char szTermCode[LEN_TERM_CODE];
long lDue;
long lDiscount;
double dDiscount;
SQLBindCol(hstmt,1,SQL_C_CHAR,szTermCode,LEN_TERM_CODE,&cb);
SQLBindCol(hstmt,2,SQL_C_LONG,&lDue,0,&cb);
SQLBindCol(hstmt,3,SQL_C_LONG,&lDiscount,0,&cb);
SQLBindCol(hstmt,4,SQL_C_DOUBLE,&dDiscount,0,&cb);
int iIndex;
rc = SQLFetch(hstmt);
while(SQL_SUCCESS == rc)
{
TERM_CODE* pTermCode = new TERM_CODE;
pTermCode->m_strTermCode = szTermCode;
pTermCode->m_lDue = lDue;
pTermCode->m_lDiscount = lDiscount;
pTermCode->m_dDiscount = dDiscount;
iIndex = m_lbxTerm.AddString(szTermCode);
m_lbxTerm.SetItemData(iIndex,(DWORD)pTermCode);
rc = SQLFetch(hstmt);
}
省略掉了数据库的连接和断开过程,在这段代码中对一个结构体进行赋值
struct TERM_CODE
{
CString m_strTermCode;
long m_lDue;
long m_lDiscount;
double m_dDiscount;
};
m_lbxTerm是一个与listbox相关联的变量。
在对话框初始化函数中加入这个函数。
当然这段代码中结构体中的变量要依据你的数据库的内容而变化Top
3 楼newKoala(金猪宝贝)回复于 2003-12-01 19:16:23 得分 0
我看看
谢谢先Top
4 楼ukyo1(**)回复于 2003-12-01 19:35:46 得分 5
我自己写的两个小程序,一个是从Access数据库中导出数据到Mysql,没写完,只实现了一个读取Access数据库数据表名的功能,另一个是给同学帮忙写的毕业设计,极简单的一个火车购票系统,都是用DAO实现。你要是想看过几天我给传到网上去。Top
5 楼wangzitan(木木)回复于 2003-12-01 21:09:36 得分 5
我有若干此类程序
可以给你说说方法:
1,给对话框类增加成员变量,CDaoDatabase * pDB;
2,在对话框的初始化函数里打开数据库:pDB->Open(pstrDatabasePath);
生成数据表对象CDaoTabledef TAble(pDB)类名称我记的不太清楚,你可以参考MSDN;生成记 录集对象 CDaoRecordset rs(pDB);并用Open()函数打开,说明见MSND,然后读取每一个字段的属性,作为Listbox的列标题,最后遍历记录集,用GetfieldValue()获得其字段值,添加到Listbox中,注意GetfieldValue()的返回值类型,需转换成CString 类型.实现起来不是十分困难,可以参考MSDN
如果有什么不懂的地方可以给我MAILE,我可以给你我的程序原码.wangzitan@163.com
Top
6 楼newKoala(金猪宝贝)回复于 2003-12-02 08:40:43 得分 0
谢谢楼上的各位
我按照提供的思路
自己研究一下
等着看的你程序啊,好好向各位学习Top




