On 1 Sep 2017, at 1:23pm, LincolnBurrows <ljburrows...@gmail.com> wrote:

> Sometimes, the corruption is only or mostly in indexes, in which case it
> would be possible to get some or most records by trying to dump the entire
> database with .dump, and use those commands to create a new database:
> 
> $ sqlite3 mydata.db ".dump" | sqlite3 new.db

SQLite now has a command suited for this purpose:

<https://sqlite.org/lang_reindex.html>

The REINDEX command by itself will automatically DROP and reCREATE all indexes 
in a database in one operation.  Like VACUUM it locks the database, so it’s not 
a good idea to use this when other threads/processes are trying to use the 
database.

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

Reply via email to