I wrote a program that has an SQLite database, modifying it every few seconds.

Now I want to write a small gadget program that would just read a bit of info from that database (read-only) and display it.

Can the second program open the database as "read-only", while the first program might be modifying it?
Is using Read Only=True when opening the database enough?
Or do I have to make a copy of the SQLite file, or something?
I did not find any tip about this on sqlite.org.

The second program does not need real-time info, it can be a bit outdated.


1 Answer 1


You are looking for WAL Mode.

WAL provides more concurrency as readers do not block writers and a writer does not block readers. Reading and writing can proceed concurrently.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.