使用Crecordset生成的对象if(!myuserset.Open(AFX_DB_USE_DEFAULT_TYPE,sqlStr))时报错。
//创建查询语句
sqlStr="SELECT * FROM usertalbe WHERE user_name='";
sqlStr+=m_username;
sqlStr+="'";
sqlStr+="AND user_pwd='";
sqlStr+=m_password;
sqlStr+="'";
// MessageBox(sqlStr);
//打开数据库
if(!myuserset.Open(AFX_DB_USE_DEFAULT_TYPE,sqlStr))
{
MessageBox("user表打开失败!","客房管理系统");
return;
}
loguserid=m_username;//保存操作员ID,其他窗口要用
if(!myuserset.IsEOF())//关闭数据库连接
{
myuserset.Close();
CDialog::OnOK();
}
else
{ //给出错误提示
MessageBox("登陆失败!","客房管理系统");
m_username=_T("");
m_password=_T("");
UpdateData(false);//更新显示
myuserset.Close();//关闭数据库连接
return;
}
本地登入可以,局域网内数据库ADO成功连接,数据查询时调用上述代码报错不可以。
局域网内也可以登入,并且不需要在局域网客户端再建立数据源。
调试看看sql语句是不是对的