All, I have implemented the method suggested and it works well for me. I am running on an embedded device and the general performance we get using SQlite is not great. Additionally the database is not that large compared to some of the other users' needs. Our database can only ever be a mamixmum of 25MB. And in most cases it will never reach this size.
On our PC simulator all commands execute quickly including our quick delete and indeed the progress bar shoots up to 100% in a second or two. The IO also completes quickly. On our target unit, it takes alot longer, deleting approx 800 records from one table and 2400 from another table will take approx 1min 30 secs. The bulk of this time is before the COMMIT, therefore before the IO stage I believe, the COMMIT only takes a few seconds. So in this case we would like a progress indicator to represent a reasonably accurate representation of progress so user will not think the unit has locked up. Currently the method specified by Dr Hipp seems to work well for us. Thanks for all your help and interest. Mark > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > Sent: 09 May 2006 17:44 > To: sqlite-users@sqlite.org > Subject: Re: [sqlite] accurate progress indication > > > Dennis Cote <[EMAIL PROTECTED]> wrote: > > [EMAIL PROTECTED] wrote: > > > Yes. To get reasonable performance you will need to enclose > > > the SELECT and all the individual DELETEs within a BEGIN...COMMIT. > > > > > Richard, > > > > Won't this quickly run through the select and delete > commands, so that > > the progress bar quickly reaches 100%, and then sit there > for some time > > while the I/O is done during the commit? > > > > Yes. > > So the answer to the original question becomes that there > is not good way to give a progress bar on a big delete. > -- > D. Richard Hipp <[EMAIL PROTECTED]> > > > DISCLAIMER: This information and any attachments contained in this email message is intended only for the use of the individual or entity to which it is addressed and may contain information that is privileged, confidential, and exempt from disclosure under applicable law. If the reader of this message is not the intended recipient, or the employee or agent responsible for delivering the message to the intended recipient, you are hereby notified that any dissemination, distribution, forwarding, or copying of this communication is strictly prohibited. If you have received this communication in error, please notify the sender immediately by return email, and delete the original message immediately.