Thank you Ralf. I had an idea that might be the case. I'll look into the sesion module. There are quite a few topics on the net about restoring SQLite databases. Most of them warn against not doing it when there are open connections but none seem to explain how application A is supposed to know that application B has open connections at the time. Each time I came up with an idea to check I seemed to run into a race condition needing semophores. Possibly for my issue I can get away with doing what I need in a transaction anyway, without backing up. Its often just small changes like adding a field to a table, making a new view or changing the sql of a view. BTW Sorry to be the cause of that reply in old nabble's sqlites forum. I'm sure it was well intended. But for anyone else reading this, I use DISQLite3 and find it extremely robust, fast and easily the best and most simple to use SQLite component - and being able to get fast support directly from the author is fantastic. Howard