же в xe5. Кроме того, дополнительный трафик и все это клиент-серверная вещь требуют> 5 Мбит в секунду (!) Для нормальной работы. Я использую только TFDConnection и TFDQuery. Специально для MySQL скорость совпадает с компонентами Delphi и с сторонним драйвером (libmysql.dll). Если у вас нет FireDAC, вы можете заменить TFDQuery на TSQLQuery. Ниже приведен порядок заполнения сетки:
procedure SelGrid(sql:ansiString;Q:TFDQuery;grid:TStringGrid);
var i: integer;
begin
Q.Close;
Q.SQL.Text:='';
Q.Open(sql);
grid.ColCount:=Q.FieldCount;
grid.RowCount:=1;
while not Q.Eof do begin
for i := 0 to grid.ColCount-1 do grid.Cells[i,grid.RowCount-1]:=Q.Fields.Fields[i].AsString;
grid.RowCount:=grid.RowCount+1;
Q.Next;
end;
Q.Close;
if grid.RowCount>1 then grid.RowCount:=grid.RowCount-1;
grid.Row:=0;
//AutoSizeGridColumns(grid,30,200);
end;
Это сетка строк VCL. Конечно, вы имеете дело с обновлениями и так далее, но у вас не будет проблем с производительностью.
IMHO Ваша единственная надежда заключается в том, чтобы понизить или использовать какой-либо компонент таблицы сторонних компонентов – ComputerSaysNo
@ComputerSaysNo - проблема не в TClientDataset, я даже не использую CDS – Branko