1

ユーザーが sqlite db をバックアップするオプションを提供しました。私が行う方法は、外部メモリにコピーすることです。必要に応じて、元に戻すことができます。

ただし、この状況をどのように回避できるか疑問に思っています。

ユーザーがバージョン 1 でデータベースをバックアップした場合、変更されたデータベースであるバージョン 2 にアプリを更新しました。次に、ユーザーがデータベースをロードします(古いバージョンのもの)。これにより、アプリがクラッシュします。1- ユーザーがコピーしている DB のバージョンを検出して、現在の db バージョンと比較し、コピーを防止する方法はありますか? 2- (さらに良い) DB のコピーされたバージョンをバージョン 2 に更新して、それをアプリにロードできますか?

これで何か助けていただければ幸いですありがとう

4

1 に答える 1

1

データベースを保存する機能をユーザーに提供するアプリケーションがあります。しかし、この種の問題を避けるために、データベースファイルを「コピー」して保存するだけでなく、DBに含まれるデータを特定の方法で別のファイル(保存ファイル)に書き込む、つまり、エクスポートされたデータを保存するための新しいファイル形式を作成しました。

また、エクスポートしたデータを復元する必要がある場合は、保存ファイルを解析して、インポートしたデータをデータベースに挿入するだけです。だから、私は何を輸出し、何を輸入するかをコントロールしています。

実装するのはもっと複雑ですが、それが最善の方法だと思います。

于 2013-02-01T01:50:53.063 に答える