On 2015-04-08 05:38 PM, Dan Kennedy wrote: > On 04/08/2015 09:51 PM, R.Smith wrote: >> >> >> On 2015-04-08 04:18 PM, Fabian Pr?bstl wrote: >>> Hi there! >>> >>> Currently, we are using SQLite as our application file format for a >>> Windows 7/C#/System.Data.SQLite based desktop application. We only >>> allow one instance to open the file by running "set >>> locking_mode=EXCLUSIVE;BEGIN EXCLUSIVE;COMMIT" when connecting to >>> the database. >> >> BEGIN EXCLUSIVE - Locks the database from other SQLite3 database >> connections for the time being. >> COMMIT; - Unlocks it again - so calling all this in one go is pointless. > > Almost always correct. But the "PRAGMA locking_mode=EXCLUSIVE" thing > changes the behaviour: > > https://www.sqlite.org/pragma.html#pragma_locking_mode
But you need an actual SELECT to get a shared lock and an actual write operation to lock it exclusively, just starting the transaction and ending it does nothing to that effect? Or is my understanding wrong?