📄 subject_37241.htm
字号:
<p>
序号:37241 发表者:tcls 发表日期:2003-04-23 10:24:20
<br>主题:ODBC初学者求助:无法从数据库中Select数据??
<br>内容:<BR>以下程序运行结果总是:"用户登录出错" why? <BR>CRecSet *m_recordset=new CRecSet(&m_database);<BR> CString strSQL;<BR> UpdateData(TRUE);<BR> strSQL.Format("select * from user where userid='%s' and passwd='%s' ",m_user, m_pwd);<BR> m_recordset->Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);<BR> if(m_recordset->GetRecordCount()==0){<BR> if(count<3){<BR> MessageBox("用户登录出错!!");<BR> count++;<BR> }<BR> else{<BR> MessageBox("超过三次!!");<BR> m_database.Close();<BR> CDialog::OnOK();<BR> }<BR> }<BR> else{<BR> AfxMessageBox("用户名&密码验证通过!!");<BR> m_database.Close();<BR> CDialog::OnOK();<BR> }
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:tcls 回复日期:2003-04-23 11:16:13
<br>内容:为什么现在返回是: 无效的描述器索引??<BR><BR>诸位大虾:救救我!!!!!!!!!!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:金枪鱼 回复日期:2003-04-23 13:25:15
<br>内容:1、我不知到你的SQL语句是否正确,我习惯使用<BR> CString str_SQL=_T("Select* from user where userid='%")<BR> +m_user+_T("' and passed='%")+m_pwd+_T("'");<BR>2、记录集底打开<BR> m_recordset->Open(CRecordset::dynaset,strSQL,CRecordset::readOnly);<BR>打开语句后应该判断是否打开成功<BR> if(!m_recordset->IsOpen())<BR>{ <BR>......<BR>} <BR>//打开成功后才进行操作<BR> if(m_recordset->IsOpen())<BR>{<BR> ......<BR>}<BR>3、你用new分配了记录集底指针,你底程序没有进行关闭、销毁和避免野指针底处理,内存就这样泄漏了。<BR> if(m_recordset->IsOpen())<BR> m_recordset->Close();<BR> delete m_recordset;<BR> m_recordset=NULL;<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -