代码如下:ADOQuery1.SQL.Text:='SELECT * FROM `obtcard`.`realnamecard`;';
  ADOQuery1.Open;
  fieldcount:=ADOQuery1.FieldCount;
  ShowMessage(IntToStr(ADOQuery1.RecordCount));
  while not ADOQuery1.Eof do
  begin
    recordStr:='';
    for I := 0 to fieldcount - 1 do
      recordStr:=recordStr+' | '+ ADOQuery1.Fields[i].asstring;
    Memo1.Lines.Add(recordStr);
    ADOQuery1.Next;
  end;
  ADOQuery1.Close;这样的话会返回E_FAIL状态且数据集里面没东西但是我将查询语句换成:ADOQuery1.SQL.Text:='SELECT count(*) FROM `obtcard`.`realnamecard`;';
的话能够查出记录数量,求高手不吝指教!