2011-07-29 7 views
0

私はデータベースをバックアップできる簡単な方法を知っています。そのファイルには.dbファイルのコピーが直接あります。しかし、問題は、データベーステーブルを新しい列で更新する必要がある場合です。古いデザインと同じように、バックアップは役に立たなくなります。Androidでデータベースをバックアップする正しい方法は?

回避策は、データを解析してファイルに保存することです。しかし、私はこのことがどれくらい簡単で安全かはわかりません。

この件についてあなたが感じることを教えてください。より良いアイデアがあれば教えてください。サンプルコードは便利です。あなたのアドバイスと時間をありがとう。ありがとうございました。

答えて

0

あなたは面白い点を持ち上げています。私は前に個人的に考えていません。

データベースの "バージョン"は、データベースファイル自体(おそらくファイル名)にいつでも保存できます。その後、データベースを開くと、そのバージョンを取得して、新しい列を追加するonUpgrade()メソッドをSQLiteDatabaseHelperで実行することができます。

+0

ただし、バージョン1の古いデータでバックアップされているデータベースがある場合、バージョン2がインストールされています。今すぐ古いバックアップからデータだけを更新し、作成された新しい列を保持する場合は、どうすればよいですか? – Vinodtiru

+1

あなたのonUpgradeは、必ず存在する場合は削除しなければならないし、再度onCreateする必要があります...必要な行/列を追加する特定のメソッド(DBアップグレードごとに1つずつ)を設定できます。これらの新しい列スロットに特定の値を設定する場合は、テーブルを反復処理する必要があります。 –

+0

ありがとうございます。 – Vinodtiru

関連する問題