Управление таблицами sqlite в SQLiteOpenHelper onUpgrade - PullRequest
0 голосов
/ 24 мая 2018

У меня есть приложение для Android, опубликованное в Playstore.Мне нужно добавить несколько столбцов в существующую таблицу.Когда я удаляю и воссоздаю таблицу, все данные будут потеряны.

Есть ли способ изменить базу данных, сохраняя существующие данные.

1 Ответ

0 голосов
/ 25 мая 2018

Чтобы добавить столбцы, вы можете использовать ALTER TABLE your_table ADD COLUMN column_definition, не удаляя таблицы.

Пожалуйста, прочитайте SQL как понятно SQLite - ALTER TABLE , поскольку существуют ограничения.Ссылка также обсуждает другие виды изменений схемы.

например, у вас может быть что-то вроде: -

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    if (oldVersion = 1 && newVersion > 1) {
        String alterSQL = "ALTER TABLE " + TABLE_NAME + " ADD COLUMN " + NEWCOLUMN + " INTEGER DEFAULT 100";
        db.execSQL(alterSQL);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...