adoquery1...
adoquery1.sql.add('select password from table1 where name ='''+edit1.text+'''');
adoquery1.open;
if (adoquery1.record>0) and (adoquery1.fieldbyname('password')=edit2.text) then
showmessage('succes') else showmessage('byebye');

解决方案 »

  1.   

    procedure TLoginFrm.BitBtn1Click(Sender: TObject);
    var
      Results: Variant;
    begin
      {用户每按一次确定,计数器自动加1,当计数器等于3时退出系统}
      Count := Count + 1;
      with MDM do
      begin
        Results := AQUseri.Lookup('uname', ComboBox1.Text, 'upass');
        if Results = LabeledEdit1.Text then {用户输入正确}
        begin
          Count := 0;
          ModalResult := mrOK;
        end
        else begin
          if Count = 3 then
          begin
            MessageBox(Handle, '密码错误,系统将关闭!',
              MBCW, MB_OK + MB_ICONWARNING);
            Close;
          end
          else
            MessageBox(Handle, '无此用户或密码不正确,请重新输入!',
              MBCI, MB_OK + MB_ICONINFORMATION);
        end;
      end; // with
    end;
      

  2.   

    To netlib
    [Error] ulog.pas(45): Incompatible types: 'String' and 'TField'
      

  3.   

    adoquery1...
    adoquery1.sql.add('select password from table1 where name ='''+edit1.text+'''');
    adoquery1.open;
    if (adoquery1.record>0) and (adoquery1.fieldbyname('password').asstring=edit2.text) then
    showmessage('succes') else showmessage('byebye');
      

  4.   

    if ADOTable1.Locate('User;password', VarArrayOf([DBEdit1.Text,DBedit2.Text]), [loPartialKey]) then
    begin
      ...
    end;