> I have had a look at the sqlite3_progress_handler() API function but > it appears that the problem is knowing how many opcodes are required > to complete the transaction before it is run.
So do this: set up sqlite3_progress_handler() with N = 1. Create a query to delete one record and count how many times the progress handler is called. Now multiply by the number of queries you are running (presuming they all take the same form) and change the progress handler N to something more reasonable. Obviously if you have a query like DELETE * FROM xyz you can make it delete two records, then three records, counting the difference, and using that as the multiplier. Hugh