procedure TQuery.CmdQueryClick(Sender: TObject); 
begin 
  Form1.Table1.indexFieldNames:= 'empno '; 
  // Form1.ADOTable1.IndexFieldNames:= 'vcNo '; 
   if Form1.Table1.Findkey([TxtEmpNo.text]) then  { Form1.Table1.Findkey([TxtEmpNo.text])} 
    begin 
     txtSalary.text:= Form1.Table1.FieldByName( 'Salary ').AsString; 
     txtHireDate.Text:=Form1.Table1.FieldByName( 'hireDate ').AsString; 
     //Form1.Table1.FieldByName( 'hireDate ').AsString; 
    end 
   else 
 begin 
  Messagedlg( 'Your empno is wrong ', mtError,[mbOK],0); 
  TxtEmpNo.Text:= ' '; 
  close; 
 end; 
end; 
 
 

解决方案 »

  1.   

    procedure TQuery.CmdQueryClick(Sender: TObject);  
    begin  
      Form1.ADOTable1.indexFieldNames:=  'empno  ';  
      // Form1.ADOTable1.IndexFieldNames:=  'vcNo  ';  
       if Form1.ADOTable1.Findkey([TxtEmpNo.text]) then  { Form1.Table1.Findkey([TxtEmpNo.text])}  
        begin  
         txtSalary.text:= Form1.ADOTable1.FieldByName(  'Salary  ').AsString;  
         txtHireDate.Text:=Form1.ADOTable1.FieldByName(  'hireDate  ').AsString;  
         //Form1.Table1.FieldByName(  'hireDate  ').AsString;  
        end  
       else  
     begin  
      Messagedlg(  'Your empno is wrong  ', mtError,[mbOK],0);  
      TxtEmpNo.Text:=  '  ';  
      close;  
     end;  
    end;  
      

  2.   

    table和adotable的属性很多是不一样的。