Hola, en vez de usar un borrado secuencial como el que estás usando, podrías lanzar una secuencia SQL que borre todos los registros de una sola vez.
Ya que estás usando ADO, supongo que has tenido que incluir un componente ADOConnection. Incluye también un componente ADOCommand e intenta usar el siguiente código que te escribo.
Un saludo.
Var
cSQL: String;
Begin
Try
ADOConnection1.BeginTrans;
ADOCommand1.Connection := ADOConnection1;
cSQL := 'Delete From {Nombre_de_la_Tabla}';
ADOCommand1.CommandText := cSQL;
ADOCommand1.Execute;
ADOConnection1.CommitTrans;
Except
On E:Exception do
begin
ADOConnection1.RollbackTrans;
Screen.Cursor := crDefault;
MessageDlg(E.Message, mtWarning, [mbOk], 0);
raise;
end;
End;
end;
|