Subject | Re: [IBO] Re: Big Batch... |
---|---|
Author | Admin |
Post date | 2001-03-22T02:54:02Z |
Jason -
My apologies. I had completely overlooked the dialog but after
reinstalling IBO I realized my mistake.
I ran it and selected most of the options except for ones that didn't
seem to apply, like array, blob etc.
Although I didn't understand all of the statements, the one thing that
I did understand was ERRCODE = 100.
The only reference in the Interbase documentation to an error code of
100 was the DSQL error code that signifies that no more rows can be
fetched, or something like that.
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:
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;
Anything in particular that I should be looking for in the sql monitor
code?
DK
[Non-text portions of this message have been removed]
My apologies. I had completely overlooked the dialog but after
reinstalling IBO I realized my mistake.
I ran it and selected most of the options except for ones that didn't
seem to apply, like array, blob etc.
Although I didn't understand all of the statements, the one thing that
I did understand was ERRCODE = 100.
The only reference in the Interbase documentation to an error code of
100 was the DSQL error code that signifies that no more rows can be
fetched, or something like that.
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:
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;
Anything in particular that I should be looking for in the sql monitor
code?
DK
[Non-text portions of this message have been removed]