Получение настройки базы данных Android? - PullRequest
0 голосов
/ 20 ноября 2010

Как правило, для WinForm или веб-приложения я создаю базу данных и таблицы через RDBMS или через отдельный процесс установки. Тем не менее, я не видел ничего подобного в Android. Все примеры, которые я видел, содержат сценарии создания базы данных, встроенные в действие типа this .

Лучшее, что я могу предложить сейчас, - это вызвать метод из конструктора доступа к данным, чтобы проверить, установлена ​​ли база данных - если нет - установить ее. Тем не менее, мне это кажется чрезмерным.

Какой самый простой способ выполнить установку базы данных Android, а затем забыть об этом?

1 Ответ

1 голос
/ 20 ноября 2010

При использовании SQLLiteOpenHelper (http://developer.android.com/reference/android/database/sqlite/SQLiteOpenHelper.html), метод onCreate будет вызываться, только если база данных не существует. OnUpgrade будет вызываться при представлении новой версии базы данных. Если база данных уже существует и обновление не произошло, эти методы не будут выполняться.

Нет необходимости внедрять проверки if-else в вашей деятельности.

private static class DatabaseHelper extends SQLiteOpenHelper 
{
    DatabaseHelper(Context context) 
    {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db) 
    {
        db.execSQL(DATABASE_CREATE);
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, 
    int newVersion) 
    {
        Log.w(TAG, "Upgrading database from version " + oldVersion + " to " + newVersion);
        db.execSQL(DATABASE_UPGRADE);
    }
}    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...