Subject Monitoring query question
Author lec_sas
Hello,
I am currently using the embedded DLL, and I am working on a data
import routine. I create an external table (Create table name external
file "random.txt") and use an "insert into select from" statement.
(INSERT INTO TABLEA(F1,F2) SELECT e_F1, e_F2 FROM e_TableA). This
works fine, however what I wish to do is to track the progress of the
query in real time. For example, if the user is importing 15 million
records, I would like to provide visual feedback (progress bar, etc)
showing the current number of records imported. This way I can
increase the progress bar in real time as the records are being
imported into the destination table.

My first idea was to put an AFTER INSERT trigger to update an
integer field in a random table and each time the trigger would
execute, it would increase the count by 1, I could then query that
field in real time. This didn't appear to work and I assumed it was
because all the trigger updates didn't get committed until the parent
query (insert into select from) was completed.

My second idea was to use events, however I read that events are
also under transaction control, and that recurring events are not even
queued up.

I have read many web pages that would suggest Firebird has support
for an autocommit mode, would this help me get around my transaction
control problem? Also, how would I set the autocommit mode using the
embedded DLL. Also, is there anyone who would have any alternative
suggestions to provide real time feedback of the records imported?

Thank You

Darin