6

プログラム「SQlite Database Browser」を使用して、sqlite データベースに取り組みました。プログラムがクラッシュし、変更内容が失われました。しかし、db-journal ファイルはまだそこにあります。ジャーナル ファイルを使用してデータベースを回復するにはどうすればよいですか? SQLite Database Browser でデータベースを開くと、古いデータベースが開きました。

私に何ができる?

ありがとう :-)

4

1 に答える 1

2

Write-Ahead ロギングを有効にしない限り、残念ながら、変更内容はおそらく失われます。SQLite のデフォルトのジャーナリング システムは、予想とは逆に機能します。

ドキュメントから:

従来のロールバック ジャーナルは、変更されていない元のデータベース コンテンツのコピーを別のロールバック ジャーナル ファイルに書き込み、変更内容をデータベース ファイルに直接書き込むことによって機能します。クラッシュまたは ROLLBACK が発生した場合、ロールバック ジャーナルに含まれる元のコンテンツがデータベース ファイルに再生され、データベース ファイルが元の状態に戻されます。

見る:

WAL: https://sqlite.org/wal.html

ジャーナルを含むファイル形式: https://sqlite.org/fileformat.html

于 2015-06-26T15:50:35.300 に答える