ADOTABLE+SQLSERVER2K
数据库中密码字段为PSW,CHAR型,PSWEDIT为密码输入框代码如下
if pswedit.Text=adotable1.Fields[0].AsString then
//if pswedit.Text=adoquery1.FieldByName('psw').asstring then
begin
mainfrm.Visible:=true;
canclose:=true;
end
else
begin
showmessage('错误的密码,请重新输入!');
pswedit.SetFocus;
pswedit.SelectAll;
canclose:=false;
end;
end;运行,老是说密码错,是什么问题啊?

解决方案 »

  1.   

    table定位正确么 ?adoquery1.FieldByName('psw').asstring 是什么值?
    以上没问题试试下面的代码
    if ansiuppercase(pswedit.Text)=ansiuppercase(adoquery1.FieldByName('psw').asstring) then
      

  2.   

    1、没问题
    2、adoquery1.FieldByName('psw').asstring 
    这里写错,是ADOTABLE。
    3、用了,还是不行
      

  3.   

    trim(pswedit.Text)=adotable1.Fields[0].AsString
    shi
    试一下,如果还有错误就是你的字段psw的类型不对,你如果设成char型的化,SQLServer会在值的后面加空格只到满足字段的长度为止。
    你可以把char改为varchar型就没问题了。