5

複数の SQLite チュートリアルで、onCreate()拡張するクラスのイベントでテーブルが再作成されることに気付きましたSQLiteOpenHelper。Firefox アドインを使用して、Android 環境 (Eclipse IDE) の外部で SQLite データベースとテーブルを作成済みです。データベース テーブルは予想される場所にあります。

C:\aXX3&Space\Android\workspace\OnDemandAndAutomatic_Project\assets

毎回プログラムでそれらを再作成する必要があるのは奇妙に思えます(明らかに、それらは引き続き存在し、データを保持しますか、それとも何がポイントになるでしょうか)? ただし、現在、このアプリケーションで深刻な問題が発生しているため、次の質問に至ります。

  • データベースについて毎回 Android に通知する必要はありますか?

非常に残念なことに、データベース テーブルを で作成する代わりに、以前のバージョンのアプリケーションである に配置したにもかかわらず、SQLite ファイルを適切な場所にコピーしても何も変わらないことに気付きC:\aXX3&Space\Android\workspace\OnDemandAndAutomatic_Project\assetsました。C:\aXX3&Space\Android\workspace\OnDemandAndAutomatic\assets私のアプリケーションが AWOL データベースを探していたことが問題の原因である場合、単にファイルをコピーして貼り付けるだけでは不十分でしょうか? データベースをディレクトリに正式に 導入するために何かをする必要がありますか? system/Android/Eclipse助言がありますか?

4

3 に答える 3

2

データベースが存在しない場合は、 が呼び出されますSQLiteOpenHelper。データベース スキーマが変更され、アップグレードが必要な場合onCreate()に呼び出されます。onUpgrade()したがって、あなたの質問に対する答えは:いいえです。

于 2012-03-29T09:59:53.240 に答える