2011-11-14 12 views
1

初期段階で私のAndroidアプリケーションを空のデータベースにインストールしました。その後、インベントリという名前のデータベースが作成され、SQLiteブラウザを使用して異なるテーブルで作成されたデータベースが新しく作成されたデータベースにコピーされます。数日後、アプリケーションの実行中にSQLiteデータベースにデータが保存されます。パッチの更新中に既存のSQLiteデータベースを削除しない方法

問題は、私が次回のリリース用にいくつかの修正を加えてパッチアップデート用のアプリケーションをインストールしているときです。すでに稼働しているアプリケーションデータベースはそこにとどまる必要があります。新しいapkファイルをインストールしているときに古いデータベースを保持するにはどうすればよいですか?

また、パッチの更新中にデータを失うことなくデータベースを更新する必要がある場合はどうすればよいですか?

答えて

0

データベースを実際にAndroidストレージに追加しているため、プロジェクトに保持することはできません。 プロジェクトからデータベースを構築し、データベース内にデータを挿入するのは、最初の実行が開始されたときに生成される必要があります。 vogella.de

、別の1:ここでは

は、そのための素晴らしいチュートリアルですandroidforbeginners.blogspot.com

私はデータベースがすでにSQLiteDatabase.openDatabase(String, SQLiteDatabase.CursorFactory, int)を呼び出すことによって存在するかどうかをチェックすることができます

+0

この方法ではデータが失われます。既に入力済みのデータが必要です –

0

に役立ちます願っています。 SQLiteExceptionがスローされても存在しない場合は、データベースファイルをコピーする必要があります。

SQLiteOpenHelperクラスを拡張し、onCreate(SQLiteDatabase)onUpgrade(SQLiteDatabase, int, int)メソッドを実装して、データベースの作成とアップグレードを管理することをお勧めします。

関連する問題