通过读取数据库的值来判断进行其它操作的问题?(100分)

  • 主题发起人 主题发起人 sunylat
  • 开始时间 开始时间
S

sunylat

Unregistered / Unconfirmed
GUEST, unregistred user!
您好:
我做了一个小程序,在读取数据库的值后,希望根据读取的数据来进行其它操作,我的数据库表中有数据,并且可以正常读取,可是不知为什么不行了,请指教!
procedure Tmainform.Button2Click(Sender: TObject);
begin
if edit1.Text ='' then
showmessage('对不起,帐号不能为空!')
else if edit2.Text ='' then
showmessage('对不起,密码不能为空!')
else
begin
adodataset1.Close ;
adodataset1.CommandText :='select * from gl_rygl where f_zh=:zh and f_mm=:mm';
adodataset1.Parameters.ParamByName('zh').Value :=edit1.Text ;
adodataset1.Parameters.ParamByName('mm').Value :=edit2.Text ;
adodataset1.Open ;
if adodataset1.Eof then
showmessage('对不起,登入失败!')
else
begin
{ if adodataset1.FieldValues['f_zw']='admin' then
button1.Enabled :=false;
这是我想执行但执行不了的语句,谢谢!
}
end ;
end;
end;
 
你可以用F7单步跟踪一下看看!
为什么执行不了
if adodataset1.Eof then
showmessage('对不起,登入失败!')
else
begin
{ if adodataset1.FieldValues['f_zw']='admin' then
button1.Enabled :=false;
这是我想执行但执行不了的语句,谢谢!
}
end ;



showmessage('对不起,登入失败!')是不是执行呢?
如果是,说明eof一直是真!
你再看看你的库!
 
看看读出来的值后面是否加了空格造成比较字符失败.
加trim函数试试
 
同意 少爷的拐杖,这是有可能的
建议用数值型,用 2 代表 admin,1 代表 user,0 代表 guest 等等,方便又实用
 
同意 少爷的拐杖+beta
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
774
import
I
后退
顶部