Yuck. Where was the database located?
So it was in main memory then ...
Is this database one that is modified a lot or is it mainly read from? If written, how often? Anything written on a timer, or based on something other than user input?
Well, I'm out of ideas then ...
Are you using encryption (passwords) on any of these databases?
We have observed this once when an HP iPAQ overnight completely drained the battery and locked itself up. The reason for the database damage was definitely not the SQLite wrapper and also not CF.NET, because we do not use them on the mobile devices. Maybe the problem is hardware specific or lies in the emergency shutdown routines of Windows Mobile / CE.