Subject Re: [IBO] Big Batch...
Author Svein Erling Tysvær
David,

> In subsequent modifications to the code, and in restricting my time
>counter to only the activities taking place between beginbusy and
>endbusy, the insert loop time is down to 15 seconds. Here's the code:

Getting better, but does this mean that your commit takes a long time to
execute?

> trans.BeginBusy(true);
> trans.StartTransaction;
> dsql.Prepare;
> tmpCol := dsql.ParamByName( 'SYMBOL' );
> for i := 1 to tsl.Count do
> begin
> tmpCol.asString := tsl.Strings[i-1];
> dsql.ExecSQL;
> // make the app responsive during long processing
> if (i mod 1000) = 0 then
> Application.ProcessMessages;
> end;
> trans.EndBusy;
> trans.Commit;

Your code looks fine, excepting that StartTransaction is a purely logical
statement which is unneccessary (but not time consuming). Just to refresh
everything - what does trans and dsql now look like (their properties)?

Set