Question [Q] How to fix corrupt database?

Hello,

When I try to recover my Whatsapp messages on my new phone after I have copied the Whatsapp folder from my old phone to the SDcard, it suddenly crashes after 10 seconds: "Whatsapp has stopped working"

I looked into the System Log to find some clues about this crash. It looks like it has something to do with SQLite and the msgstore.db (or msgstore.db.crypt) file which says that the msgstore.db file is corrupt.

  1. "E/DefaultDatabaseErrorHandler (3784): Corruption reported by sqlite on database: /data/data/com.whatsapp/databasesmsgstore.db"
  2. "E/AndroidRuntime (3784): java.lang.AssertionError: android.database.sqlite.SQLiteDatabaseCorruptExcep tion: Database disk image is malformed (code 11), SQLiteConnection.java,-2"
  3. "E/SQLiteLog (3784): (14) cannot open file at line 30191 of [00bb9c9ce4]"
  4. "E/SQLiteDatabase (3784): Failed to open database '/data/data/com.whatsapp/databases/msgstore.db' "
  5. "E/SQLiteDatabaseException: unknown error (code 14): Could not open database"
  6. "I/sqlite_db_corrupt (3784): /data/data.com.whatsapp/databases/msgstore.db"


Can somebody help me to unravel this mistery? I really want to copy my old messages to my new phone and continue using the app on my new phone.

How can I fix the corrupt msgstore file? Or see what part of the file is corrupt (the exact cause)

NOTE: I added some screenshots of the System Log file to give you more information
Attached Thumbnails
Click image for larger version

Name:	Screenshot_2014-03-07-20-19-09.jpg
Views:	236
Size:	208.9 KB
ID:	2619943   Click image for larger version

Name:	Screenshot_2014-03-07-20-25-53.jpg
Views:	220
Size:	213.6 KB
ID:	2619944   Click image for larger version

Name:	Screenshot_2014-03-07-20-26-24.jpg
Views:	239
Size:	211.5 KB
ID:	2619946   Click image for larger version

Name:	Screenshot_2014-03-07-20-27-42.jpg
Views:	231
Size:	207.1 KB
ID:	2619947  
Google Nexus 5
Firmware: 4.4.2
Kernel: 3.4.0-gabd2201
Build: KOT49H

Samsung Galaxy S1
Firmware: 2.3.6 Value Pack
Baseband: I9000XXJW4
Kernel: 2.6.35.7-I9000XXJW4-CL1043937 se.infra@SEP-62 #2
Build: Gingerbread.XWJW5