One thing to add:


I was sometimes successful to remote-repair a corrupted database by telling the 
user how to use sqlite3.exe and calling REINDEX.



After learning that, I added this to my diagnosis routine so if 
integrity_check() returns something that?s not ?ok?, my application runs a 
REINDEX on the database and then runs integrity_check again. These cases are 
now automatically repaired and usually go unnoticed by the user. I tried to 
find a reproducible case where indices get broken or out of sync with the 
pages, but was unable to.

Reply via email to