procedure TLoginfrm.bkOKClick(Sender: TObject);
begin
if not StudentDM.LoginADOQR.Active then //如果数据库没有打开,则打开数据库
StudentDM.LoginADOQR.Active:=true;
if (not StudentDM.LoginADOQR.Locate('UserID',trim(UserIDEdt.Text),[]))
or (StudentDM.LoginADOQR.FieldByName('Password').AsString <> Trim(PasswordEdt.Text)) then
begin
Edit1.Text:=trim(StudentDM.LoginADOQRUserID.AsString);
Edit2.Text:=trim(StudentDm.LoginADOQRPassword.AsString);
Application.MessageBox('账号或密码错误','提示信息',MB_ICONWarning);
UserIDEdt.SetFocus();
exit;
end
else
Application.Terminate();
end;
数据表UserID,Password,里面有个用户名和密码都是admin
我做好了一个登陆界面,连接好了数据库,写好了SQL语句,但是不管了账户和密码是否正确总是进入MessageBox模块........Edit1和Edit2是我为了跟踪数据表指针建立的...里面都能读出数据表中的admin
我把这段
or (StudentDM.LoginADOQR.FieldByName('Password').AsString <> Trim(PasswordEdt.Text))
去掉后,在UserIDEdt中输入admin,能正确登陆...经过测试好像就是这句的问题了...但是我觉得这里毫无问题啊?这个是为什么啊?
begin
if not StudentDM.LoginADOQR.Active then //如果数据库没有打开,则打开数据库
StudentDM.LoginADOQR.Active:=true;
if (not StudentDM.LoginADOQR.Locate('UserID',trim(UserIDEdt.Text),[]))
or (StudentDM.LoginADOQR.FieldByName('Password').AsString <> Trim(PasswordEdt.Text)) then
begin
Edit1.Text:=trim(StudentDM.LoginADOQRUserID.AsString);
Edit2.Text:=trim(StudentDm.LoginADOQRPassword.AsString);
Application.MessageBox('账号或密码错误','提示信息',MB_ICONWarning);
UserIDEdt.SetFocus();
exit;
end
else
Application.Terminate();
end;
数据表UserID,Password,里面有个用户名和密码都是admin
我做好了一个登陆界面,连接好了数据库,写好了SQL语句,但是不管了账户和密码是否正确总是进入MessageBox模块........Edit1和Edit2是我为了跟踪数据表指针建立的...里面都能读出数据表中的admin
我把这段
or (StudentDM.LoginADOQR.FieldByName('Password').AsString <> Trim(PasswordEdt.Text))
去掉后,在UserIDEdt中输入admin,能正确登陆...经过测试好像就是这句的问题了...但是我觉得这里毫无问题啊?这个是为什么啊?
解决方案 »
- 查询程序没显示出错,请给指点一下
- delphi通过ADO连接Excel,对作为数据源的Excel表进行插入记录时,为什么总是插入到末尾?
- TIdHTTP下载问题
- 服务程序为啥不支持键盘输入
- 请问如果在C中定义的结构体中含有union,怎样将其转换到Delphi中?
- 100分求一条SQL 语句,统计学生成绩的,在线等,搞定就给分了。22:00之前
- 如何录制屏幕并保存成AVI影片
- 用IwFile做文件上传为什么会这么慢的?
- 如何可以使得中文字符串按音序排序啊(要比较大小的方法就行了)
- 我用webbrower空件可以实现了提取出当前网页的所有链接,但是还是有很多问题....
- 请指明一个开发数据库应用的语言
- 请高手赐教 Delphi7+Rave横向打印显示不了页脚
then
if (StudentDM.LoginADOQR.FieldByName('Password').AsString <> Trim) then(PasswordEdt.Text))
begin
Edit1.Text:=trim(StudentDM.LoginADOQRUserID.AsString);
Edit2.Text:=trim(StudentDm.LoginADOQRPassword.AsString);
Application.MessageBox('账号或密码错误','提示信息',MB_ICONWarning);
UserIDEdt.SetFocus();
exit;
end
好象password跟关键字冲突
你分开写吧
if not StudentDM.LoginADOQR.Locate('UserID',trim(UserIDEdt.Text),[]))
then
if (StudentDM.LoginADOQR.FieldByName('Password').AsString <> Trim(PasswordEdt.Text)) then
begin
Edit1.Text:=trim(StudentDM.LoginADOQRUserID.AsString);
Edit2.Text:=trim(StudentDm.LoginADOQRPassword.AsString);
Application.MessageBox('账号或密码错误','提示信息',MB_ICONWarning);
UserIDEdt.SetFocus();
exit;
end
我用VB做了一个登陆界面连接没有任何错误.............
到底为什么呀......我都要死了..........
用Access和 ADOTable进行连接也没有错误的.....
你的是对的.........我成功了........谢谢了~~~~~~~~你说的意思我明白~~~太感谢了......