Thanks a lot for the answers. 

Still I have a doubt (and a question).

Quote from SQLite Document (http://www.sqlite.org/lang_transaction.html)

"After a BEGIN IMMEDIATE, you are guaranteed that no other thread or process
will be able to write to the database or do a BEGIN IMMEDIATE or BEGIN
EXCLUSIVE."

As I understand, it means after issuing BEGIN IMMIDIATE for read-only
SELECT(s), no other process can do BEGIN IMMIDIATE even if its for read-only
purpose. Even new reader will be blocked if it tries to do BEGIN IMMEDIATE. 

So if I use BEGIN IMMEDIATE for multiple SELECTs, no other reader
thread/process can do BEGIN IMMEDIATE even if it has read-only SELECTs

If this is correct, for multiple SELECT statements (read-only, no plan to
write),

Which one is preferable -> BEGIN TRANSACTION  or  BEGIN IMMEDIATE ? 


Rohit
-- 
View this message in context: 
http://www.nabble.com/Multiple-SELECTs-%28and-single-SELECT%29-and-TRANSACTION---tf2072083.html#a5713541
Sent from the SQLite forum at Nabble.com.

Reply via email to