0

アプリケーションを初めて起動するときに、使用するデータベースを作成する必要があります。データベースがまだ存在しない場合、どの時点でデータベースを作成する必要があるのか​​ わかりません。また、データベースが既に存在する場合、データベースを作成しようとしないことを確認する方法もわかりません。現在、CreateTableアプリの最初のアクティビティが実行されたときに実行する次の機能があります。

protected override void OnCreate(Bundle bundle)
{
    base.OnCreate(bundle);
    base.SetContentView(Resource.Layout.SiteListLayout);

    DataManager.CreateTable<Site>();
    DataManager.CreateTable<PanelLog>();
    DataManager.CreateTable<Trace>();
}

基本的に、これが機能するのは、CreateTableメソッドがテーブルを作成する前にテーブルが既に存在するかどうかを確認するためです。ただし、期待に反する何らかの例外があるために失敗することを知りながら、軽薄にコードを実行するという考えは好きではありません。もっとはっきりした方がいいです。

したがって、アプリを初めて実行するときにコードを実行して、テーブルを作成する必要があるかどうかをテストし、必要な場合はテーブルを作成するにはどうすればよいでしょうか? その後、アプリを実行すると、そのコードはチェックされません。

4

3 に答える 3

0

Android で他のデータ ストレージ オプションを使用できます。http://developer.android.com/guide/topics/data/data-storage.html#filesInternal をご覧くださいそのため、データベースを作成したかどうかに関係なく、データベースに情報を保存し、そのアプリを実行するたびにそのストレージを確認してください。

于 2013-08-01T08:46:20.097 に答える