标题:如何将一个SQL的查询结果赋给一个程序中定义的就是
只看楼主
xiangma04
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-7-2
 问题点数:0 回复次数:4 
如何将一个SQL的查询结果赋给一个程序中定义的就是
程序代码如下:
procedure TForm1.Button1Click(Sender: TObject);
var
yong:string;
mi:string;
n:string;
i:string;
begin
n:='pas';
yong:=edit1.Text;
mi:=edit2.Text;
ADOQuery1.SQL.Text:='select '+n+' from pass where us='''+yong+'''';
ADOQuery1.Active:=true;
i:=ADOQuery1.FieldByName(n).asstring;
edit4.Text:=i;
if i=mi then
messageDlg('欢迎登录本系统',mtinformation,[mbok],0)
else
messageDlg('密码或用户名错误!',mtinformation,[mbok],0);
end;

上面的程序实现的功能是:从数据库读一个密码出来,和用户输入的密码进行比较。
可是用if语句总会失败。能编译运行。但不得结果。用FieldByName取得返回结果却无法比较.请高手帮忙.
搜索更多相关主题的帖子: SQL 定义 结果 查询 
2007-03-23 15:26
liuqiang_sy
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2007-3-13
得分:0 
你的那个QUERY我没有试过.不过我用TABLE做的好用你看看这个应该可以.


Table1.Close;
Table1.Open;
Table1.Active;
results:=Table1.Lookup('用户名',edit1.text,'密码');{检索数据库中对应用户名的密码项}
i:=0;
if edit1.Text='' then
begin
application.MessageBox('用户名不能为空!','提示',mb_OK);
end
else if edit2.Text='' then
begin
application.messagebox('密码不能为空!','提示',mb_OK);
end
else
if results=edit2.Text then
begin
form1.Hide;
form2.show;
end
else
begin
application.messagebox('密码错误或用户不存在!','警告',mb_ok);
edit1.Visible:=true;
edit2.Visible:=true;
edit1.Text:='';
edit2.Text:='';
end;
end;
end.

2007-03-23 19:36
nongen
Rank: 5Rank: 5
来 自:网络
等 级:贵宾
威 望:17
帖 子:322
专家分:0
注 册:2006-11-25
得分:0 
n:='pas';
yong:=edit1.Text;
mi:=edit2.Text;
ADOQuery1.SQL.Text:='select '+n+' from pass where us='''+yong+'''';
ADOQuery1.Active:=true;//adoquery1.open;

i:=ADOQuery1.FieldByName(n).asstring;//if adoqery1.recordcount>0 then i:=adoqery1.fieldbyname(n).asstring; //有记录才能赋值啊。
edit4.Text:=i;
if i=mi then
messageDlg('欢迎登录本系统',mtinformation,[mbok],0)
else
messageDlg('密码或用户名错误!',mtinformation,[mbok],0);

昨天不是我的,明天不是你的,今天却是我们的。
http://www.
2007-03-24 12:11
sgliuxiu
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:291
专家分:0
注 册:2007-2-2
得分:0 
i:=trim(adoquery1.fieldbyname(n).asstring)
mi:=trim(edit2.text)

小猫说:给我10元钱
2007-03-24 12:46
xiangma04
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-7-2
得分:0 

问题已解决。谢谢各位。如版主所言,使用TRIM函数。

2007-03-24 13:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-126155-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.244190 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved