Are you finalizing the UPDATE statement?

-----Original Message-----
From: sqlite-users-boun...@sqlite.org [mailto:sqlite-users-boun...@sqlite.org] 
On Behalf Of mike.akers
Sent: Monday, February 25, 2013 4:48 PM
To: sqlite-users@sqlite.org
Subject: [sqlite] Memory DB - Query does not return all records after Update

I am using an in-memory database with a singleton containing a single 
connection. I have multiple threads (3) using this same connection, but I have 
ensured that only 1 thread uses the connection at a time.

If I do an UPDATE on a record then immediately preform a SELECT, the query will 
return all rows that match the WHERE clause except for the record that was 
being updated. The sqlite3_prepare_v2 and sqlite3_step both return SQLITE_OK 
and do not return a SQLITE_LOCKED or SQLITE_BUSY so I would assume that my 
write was completed.

I would like to be able to either
1. read the old data (as the quieres happen frequently a couple old data 
queries are fine) I have tried read_uncommited with no noticable difference.
or 2. Have the database return LOCKED or BUSY if the write has not completed so 
that the query will return all of the results.

Example, If I insert 10 records and loop a query I receive 10, 10, 10, 10, .... 
results But, if I change one of the records during the loop I get 10, 10, 
update record, 9, 10, ....

Any advice on what I am missing?

Thanks in advance,
Mike



--
View this message in context: 
http://sqlite.1065341.n5.nabble.com/Memory-DB-Query-does-not-return-all-records-after-Update-tp67267.html
Sent from the SQLite mailing list archive at Nabble.com.
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to