我今天不说出来,今天就睡不着了

twl200061 2006-01-20 10:53:59
学了电脑了有三年了,接触到MFC程序设计也有一年了,看过不少书,<primer c++> <深入浅出MFC>
 
<MFC window 程序设计> 还有些实例书,也看了有那么久了,可是从来没做过东西,这几天做一个数据库管理系统

数据库都想了几天,刚刚做好模块版面,第一个密码登录窗口代码设计就出问题了,老是不用密码都能进,我真晕啊,今天我就做在电脑面前看了一天,一动不动,就是个不知道怎么回事,参考了一下这方面的书籍就是那回事,对
照起来就没什么两样,我晕了,ODBC连接数据库 ,这就是代码部分,我真的晕了,就是登录老是不用密码,一点就进
void CClasshourDlg::OnButton1()
{
CClasshourDlg m_login;
CAdminRS *m_recordset =new CAdminRS(&m_database);
CString strsql;
int count = 0;
UpdateData(TRUE);
strsql.Format("select * from admin Where user='%s' and password='%s'",m_user,m_password);
m_recordset->Open(AFX_DB_USE_DEFAULT_TYPE,strsql);
if(m_recordset->GetRecordCount==0)
{
if(count<3)
{
MessageBox("输入不正确");
count++;
}
else
{
MessageBox("太多次数");
m_database.Close();
CDialog::OnOK();
}
}
else
{

m_database.Close();
CMain main;
main.m_database.Open(_T("db"));
main.DoModal();
}
}
...全文
301 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
醉梦书生 2006-02-27
  • 打赏
  • 举报
回复
同意dingpiao(丁飘) 的说法,可以在if(m_recordset->GetRecordCount==0)设置断点看看到底是多少,不过还是支持if(!m_pRecordset->adoEOF)判断,这才是最好的习惯
kikikind 2006-02-14
  • 打赏
  • 举报
回复
m_recordset->GetRecordCount==0
--------------
不要使用GetRecordCount判断查找到的记录个数~~~~`
周江涛 2006-02-14
  • 打赏
  • 举报
回复
不要怕,有星星在,问题总能解决。
nodefault 2006-02-08
  • 打赏
  • 举报
回复
你没有正确调用DoModal()吧!
马丁当 2006-02-08
  • 打赏
  • 举报
回复
先看看strsql字符串的内容,可以用
AfxTrace(strsql)在调试状态下输出来,粘到你的数据库客户端试一下执行结果.

一步步的调试,调试是程序员的基本功,比会写代码还重要.
dingpiao 2006-02-05
  • 打赏
  • 举报
回复
if(m_recordset->GetRecordCount==0)
有问题

用记录集和空比较就好
if(!m_pRecordset->adoEOF)
jazy 2006-01-22
  • 打赏
  • 举报
回复
m_database打开的时候设置为不需密码了
handsomerun 2006-01-22
  • 打赏
  • 举报
回复
别急,跟踪看一下,是哪出问题了

估计是你的判断那块执行到
else
{

m_database.Close();
CMain main;
main.m_database.Open(_T("db"));
main.DoModal();
}

执行到这块里去了
danielzhu 2006-01-21
  • 打赏
  • 举报
回复
你的数据连接,不需要输入密码,呵呵

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧