An SQLite database is highly resistant to corruption. If an application crash, or an operating-system crash, or even a power failure occurs in the middle of a transaction, the partially written transaction should be automatically rolled back the next time the database file is accessed. Though SQLite is resistant to database corruption, it is not immune and in some cases a special tool like SQLiteDoctor is required in order to be able to fully restore your damaged sqlite database.

There is also a new section about how to corrupt your sqlite databases.