VC+ADO查询SQL表中的数据

flower1223 2006-12-14 01:36:33
新手学习中,一头雾水。
一个简单的用户信息验证程序,使用ado连接数据库已经成功,可是验证总也不成功,那位大虾给指教一下啊,小女子拜谢!
程序如下:
_variant_t var;
m_pRecordset->Close();
try
{
m_pRecordset->Open("SELECT * FROM teacher_table",
m_pConnection.GetInterfacePtr(),
adOpenDynamic,adLockBatchOptimistic,adCmdText);

if(m_pRecordset->adoEOF)
{
m_pRecordset->Close();
}
//检查用户是否存在
else
{
m_pRecordset->MoveFirst();
if((_variant_t(m_Name)!==m_pRecordset->GetCollect("教师姓名")))
{
AfxMessageBox("用户不存在!");
}
}
}
catch(_com_error*e)
{
AfxMessageBox(e->ErrorMessage());
}
...全文
192 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
flower1223 2006-12-14
  • 打赏
  • 举报
回复
问题解决了,我没有更新数据。谢谢楼上的大哥,以后还要多麻烦你呢!
flower1223 2006-12-14
  • 打赏
  • 举报
回复
"state"是谁啊,在哪里定义的啊?
还有哪一句程序是查询输入数据和数据库里的数据的符合性呢?
hansxl 2006-12-14
  • 打赏
  • 举报
回复
写漏了一句
m_pRecordset->Open(strSQL,
m_pConnection.GetInterfacePtr(),
adOpenDynamic,adLockBatchOptimistic,adCmdText)
hansxl 2006-12-14
  • 打赏
  • 举报
回复
妹子,你写的程序有点问题吧、
如果是你写的那样,只有那个m_ame在第一位才成功,至少也要用个循环
把大体内容修改如下:

_variant_t var;
m_pRecordset->Close();
try
{

CString strSQL = _T("");
strSQL.Format(_T("SELECT * FROM teacher_table WHERE 教师姓名 = '%s'"),m_name);
m_pRecordset->Open("",
m_pConnection.GetInterfacePtr(),
adOpenDynamic,adLockBatchOptimistic,adCmdText);
//察看是否有记录
if(m_pRecordset->adoEOF)
{
AfxMessageBox("用户不存在!");
}

if(m_pRecordset.GetInterfacePtr() != NULL && m_pRecordset->state = adStateOpen)
m_pRecordset->Close();
}
catch(_com_error*e)
{
AfxMessageBox(e->ErrorMessage());
}

22,294

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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