hur.cn - 华软网

 热门搜索

[求助]ODBC数据库查询问题

  作者:未知    来源:网络    更新时间:2011/1/11
1)ACCESS建立了数据库,配了数据源mydb。数据库中有多个表:表1,表2....。
2)VC6.0建立了鉴于对话框的程序,上面有若干EDIT控件和BUTTON控件用于显示和操作。
         CDatabase m_db;
         dbset m_rs;//class dbset : public CRecordset
3)BOOL CDbtestDlg::OnInitDialog()函数中
m_db.Open(_T("mydb"));
m_rs.m_pDatabase=&m_db;
m_rs.Open();//打开的是哪一个表的记录集?我想打开“表2”如何操作?
4)要实现查询表2,详细功能实现为:编辑框中输入学号,点击查询按钮,在另一编辑框中显示姓名。
void CDbtestDlg::OnFind()//对应查询按钮的单击消息响应函数
UpdateData(TRUE);
CString str_findID;
CString tempstr;
tempstr="m_clientID";//表2的m_clientID字段,代表学号
str_findID=tempstr+"='"+m_find_ID+"'";//CString m_find_ID为输入编辑框对应的变量
m_rs.m_strFilter=str_findID;
m_rs.Requery();
m_name=m_rs.m_name;//表2的m_name字段,代表姓名,编辑框对应CSting m_name变量显示查询结果
m_rs.m_strFilter="";
UpdateData(FALSE);
//运行时,单击查询按钮,弹出一个对话框,提醒:参数不足,期待是1。
5)不知是否把问题表述清楚,希望高手帮助。另外关于CDatabase和CRecordset派生类
数据库的操作对于打开、关闭、Requery()有哪些注意的地方啊。比如:是否是打开之后,措置惩罚完造诣必需关闭。


---华软 网友回答---
m_rs.Open();//打开的是哪一个表的记录集?我想打开“表2”如何操作?
打开的是表2,由于用MFC ClassWizard建立记录集派生类时,选的是表2.
---华软网友回复---
问题解决了,表中的字段名写错了,应该为:clientID
---华软网友回复---
问题解决了,表中的字段名为:clientID,我在程序中写成了m_clientID了,将程序中的m_clientID改成clientID即可。
---华软网友回复---
呵呵……不错嘛,遇到问题,自己解决……
祝贺
---华软网友回复---
汗,这样的毛病好低级呀···不应该···      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。