Sqlite "The database disk image is malformed” 檔案大小畸形

SQLite 不提供Repair命令。
在 磁盤空間不足,還有就是寫入數據過程中突然掉電等。
就會出現檔案大小畸形的問題。
官方對產生原因的一些說明: http://www.sqlite.org/lockingv3.html#how_to_corrupt

可以使用指令檢查,或重建 db

檢查
sqlite  my.sqlite3
sqlite>PRAGMA integrity_check;

重建
  1. 到官網下載 sqlite-shell
    http://www.sqlite.org/download.html
  2. 將 sqlite3.exe 解壓縮到DB檔案旁
  3. 到 cmd 下指令,將資料 dump 到 .sql
    dir> sqlite3 DB檔名
    sqlite>.output tmp.sql
    sqlite>.dump
    sqlite>.quit
  4. 將 .sql 匯入 新 .db
    sqlite3 newdb.db
    sqlite>.read tmp.sql
    sqlite>.quit
Sqlite "The database disk image is malformed” 檔案大小畸形 Sqlite "The database disk image is malformed” 檔案大小畸形 Reviewed by Wild on 9/22/2013 06:47:00 下午 Rating: 5

沒有留言:

沒有Google帳號也可發表意見唷!

技術提供:Blogger.