WAL(Write-Ahead-Logging) SQLite 3.7(iOS 7のCore Dataのデフォルト)で有効になっている場合、-walファイルのコンテンツをメインにマージ/コミットするにはどうすればよいですか?データベースファイル?
checkpoint を実行します。つまり、 PRAGMA wal_checkpoint を実行します。
コマンドラインから、次のようにします。
sqlite3 MyDatabase.sqlite
VACUUM;
完了!
-walファイルのサイズは0になり、すべてがメインデータベースファイルに含まれるはずです。
アプリ「DBBrowserfor SQLite」でデータベースを開き、ジャーナルモード「WAL」から「Off」に切り替え、「Apply」ボタンをタップして「WAL」に戻します。