procedure Tconfirmbox.Button1Click(Sender: TObject);var
  ADOQuery_confirm: TADOQuery;
  aa:string;
begin
  aa:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=sjc.mdb;Persist Security Info=False';
  try
    ADOQuery_confirm:= TADOQuery.Create(nil);
    ADOQuery_confirm.ConnectionString:= aa;
    with ADOQuery_confirm.Parameters.AddParameter do
    begin
      DataType:=ftstring;
      Name:='UserName';
      Value:='';
    end;
    ADOQuery_confirm.SQL.Add('select * from user where UserName=:UserName');
    ADOQuery_confirm.Parameters.parambyname('UserName').value :=edit_User.text;
    ADOQuery_confirm.Open;
    if ADOQuery_confirm.RecordCount = 0 then
    begin
      MessageDlg('用户名错误',mtError,[mbok],0);
      Exit;
    end else begin
      if ADOQuery_confirm.FieldByName('password').AsString <> edit_password.text then
      begin
        MessageDlg('用户名或口令错误',mtError,[mbok],0);
        Exit;
      end
      else form1.N_access.enabled:=true;
    end;
    ADOQuery_confirm.Close;
    ADOQuery_confirm.Free;
  except
     MessageDlg('连接数据库出错',mtError,[mbok],0);
  end;
end;

解决方案 »

  1.   

    procedure Tconfirmbox.Button1Click(Sender: TObject);var
      ADOQuery_confirm: TADOQuery;
      aa:string;
    begin
      aa:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=sjc.mdb;Persist Security Info=False';
      try
        ADOQuery_confirm:= TADOQuery.Create(nil);
        ADOQuery_confirm.ConnectionString:= aa;
        ADOQuery_confirm.SQL.Add('select * from [user] where UserName=:UserName');
        ADOQuery_confirm.Parameters.parambyname('UserName').DataType:=ftString;
        ADOQuery_confirm.Parameters.parambyname('UserName').value :=edit_User.text;
        ADOQuery_confirm.Open;
        if ADOQuery_confirm.IsEmpty then
        begin
          MessageDlg('用户名错误',mtError,[mbok],0);
          Exit;
        end else begin
          if ADOQuery_confirm.FieldByName('password').AsString <> edit_password.text then
          begin
            MessageDlg('用户名或口令错误',mtError,[mbok],0);
            Exit;
          end
          else form1.N_access.enabled:=true;
        end;
        ADOQuery_confirm.Close;
        ADOQuery_confirm.Free;
      except
         MessageDlg('连接数据库出错',mtError,[mbok],0);
      end;
    end;