Como indica Chris,
cuando llamas a RecordCount sobre un componente que hereda de TSQLQuery o similares, el número que devuelven es la cantidad de registros que han sido descargados (fetch).
prueba esto:
Código Delphi
[-]
DataSet.close;
DataSet.Open;
DataSet.Last;
try
RowCount := DataSet.RecordCount;