0

アプリケーションでSqliteデータベースを使用しています。

すでにアプリケーションをAppstoreにアップロードしています。

データベースにいくつかの変更を加え、アプリケーションの2番目のバージョンをアップロードしました。これで、すべてのユーザーがアプリケーションをインストールします。以前のバージョンのアプリケーションをアンインストールせずにデータベースを変更する方法はありますか?

私のsqliteデータベースファイルはドキュメントディレクトリフォルダに保存されています。

これどうやってするの?

4

2 に答える 2

0

ええ、これはコアデータで可能です。この概念はコアデータの移行として知られています。

そしてあなたの場合、あなたはそれを手動で行うことができます..どのデータテーブルが変更されているかを見つけて、あなたのバージョンをチェックしてそれを更新するだけです。

于 2012-06-12T12:08:59.173 に答える
0

データベースの移行を実行する必要があります。これは、アプリの更新バージョンが古いデータベースの存在を確認する必要があることを意味します。

見つかった場合は、データベースを新しいスキーマに更新するために必要なすべてのステートメントなどをALTER TABLE ...実行する必要があります。CREATE TABLE ...

行った変更の数と種類に応じて、これは簡単な場合と難しい場合があります。ただし、データベーススキーマを完全に再設計した場合でも、データが存在する限り、データを移行できるはずです。

TDDアプローチを採用するか、少なくともいくつかの単体テストを作成して移行プロセスをテストすることを強くお勧めします。最後に必要なのは、ユーザーがデータを失うことです。

于 2012-06-12T12:09:07.413 に答える