数据库用户加密---蔡鸟100分请教高手门

suke_007 2002-04-16 12:18:38
蔡鸟100分请教高手门:我做数据库用户加密,是 先建一个用户密码表,然后用ADOQUERY控件进行查找,问用它的什么属性来 判断是否找到了数据??我的 部分 代码如下:(还有这个判断语句放在住窗口 的 paint事件 里)
var
CmpTimes,bn:integer;
ss1,ss2:string[20];
begin
CmpTimes:=1;
if PassWordIn=FALSE then
begin
PassWordIn:=TRUE;
repeat
bn:=PassWordDlg.ShowModal;
if bn=mrOk then
begin
ss1:=PassWordDlg.UserName.Text;
ss2:=PassWordDlg.Password.Text;
with ADOQuery1 do begin
Close;
SQL.clear;
SQL.Add('select * from 密码 ');
SQL.Add('where username=ss1 and password=ss2');
if ADOQuery1.Prepared=false then ADOQuery1.Prepare;
ADOQuery1.Open;
if ADOQuery1.ActiveRecord=0 then
CmpTimes:=100
else
begin
CmpTimes:=CmpTimes+1;
if CmpTimes>3 then
Close
else
messageDlg('密码错误,请重新输入,一共三次机会!',mtWarning,[mbOk],0);
end;
end;
end
else{bn=mrcancel;}
begin
CmpTimes:=100;
Close;
end;
until(CmpTimes>3);
show;
end;
end;
...全文
51 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hwkknd 2002-04-17
  • 打赏
  • 举报
回复
见者有份!
我再帮你UP一下!
呵……
suke_007 2002-04-17
  • 打赏
  • 举报
回复
正么给分啊
Billy_Chen28 2002-04-17
  • 打赏
  • 举报
回复
up一下
suke_007 2002-04-17
  • 打赏
  • 举报
回复
哈哈对不起各位,原来我的密码写的有问题!!好了给你们家分
njbudong 2002-04-16
  • 打赏
  • 举报
回复
最好不要用recordcount,可以用isnull,count(*)等.否则可能有bug(delphi)
Kylixer 2002-04-16
  • 打赏
  • 举报
回复
用IsEmpty
yuanshengbing 2002-04-16
  • 打赏
  • 举报
回复
adoquery.recordcount>0;

adoquery.open;
adoquery.first;
adoquery.eof=false;
StarRains 2002-04-16
  • 打赏
  • 举报
回复
ADOQuery1.Recordcount>0;
或者:
not ADOQuery1.IsEmpty
suke_007 2002-04-16
  • 打赏
  • 举报
回复
好像上面的 方法都不行啊!!当我输入正确的 信息时,总是说输入部队,是不是我的判断豫具有问题,还是其他的??
我的 代码小小的改了一下

begin //1
ss1:=PassWordDlg.UserName.Text;
ss2:=PassWordDlg.Password.Text;
with ADOQuery1 do begin //2
Close;
SQL.clear;
SQL.Add('select * from password ');
SQL.Add('where username='''+ss1+''' and password='''+ss2+'''');
//if ADOQuery1.Prepared=false then ADOQuery1.Prepare;
Open;
if Recordcount>0或是其他的 方法 then
begin
CmpTimes:=100;???????????
end
else
begin//3
CmpTimes:=CmpTimes+1;
if CmpTimes>3 then
MainForm.Close
else
messageDlg('密码错误,请重新输入,一共三次机会!',mtWarning,[mbOk],0);
end;//3
end;//2
end //1
shengs 2002-04-16
  • 打赏
  • 举报
回复
while adoquery1.eof do
begin
……
end;
或者
if isempty(table1)
……

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧