我的数据库连接是用ADO做的,在Form上放了一个ADOQUERY,EDIT_PASSWORD,EDIT_USERNAME,BUTTON_OK,BUTTON_CANCEL. 不知道怎么样进行密码验证啊。

解决方案 »

  1.   

    with adoquery do
    begin
      Close;
      SQL.clear;
      SQL.Add('select * from Your_Table Where UserName='''+trim(EDIT_USERNAME.text)+''' And PassWord='''+Trim(Edit_PASSWORD.text)+'''');
      Open;
      
      While not eof do
      being
        showmessage('通过验证');
      end;
    end;
      

  2.   

    这样子好像有一点不太妥当吧!能不能区分密码的大小写呢!最好是在Open后生成数据集,用字符串比较函数验证密码字符串!
      

  3.   

    我认为oupj()的不错,可以区分大小写。
      

  4.   

    if(trim(edit_username)='')then
    begin
      showmessage('请输入用户名');
      exit;
    end;ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('select * from Tablename where username=:username');
    ADOQuery1.Parameters.ParamByName('username').value :=trim(edit_username.Text);
    ADOQuery1.Prepared;
    ADOQuery1.Open;
    if not ADOQuery1.Eof then
    begin
      password:=trim(ADOQuery1.FieldByName('password').AsString);
    end
    else
    begin
      showmessage('用户名输入错误,请核实!');
      exit;
    end;if trim(editpassword.Text)<>password then
    begin
      showmessage('密码错误,请检查后重新输入!');
      editpassword.SetFocus;
      exit;
    end
    else
    begin
      showmessage('密码正确,登录成功!');
    end;麻烦一点,但我觉得思路清楚一点!