On 26 Jun 2011, at 12:03pm, Cecil Westerhof wrote:

> Because SQLite is not a server, it is possible that someone removes a record
> that should not be removed because of a foreign key constraint. How to check
> if a database is still correct? There is no check after:
>    PRAGMA FOREIGN_KEYS = ON;
> I checked.

SQLite incorporates locking as part of its design.  Rather than locking each 
TABLE individually, SQLite locks the entire database at once.  In fact that's 
the only kind of locking it ever does.  So removing a row from one TABLE will 
lock all other TABLEs, including the ones it's a FOREIGN KEY for.

Simon.
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to