Как добавить новые столбцы в базу данных SQLite после выпуска приложения для Android? - PullRequest
0 голосов
/ 01 июня 2018

Я хочу добавить новые столбцы в базу данных SQLite, но я уже выпустил свое приложение в Play Store, поэтому, если я отредактирую его, пользователям потребуется удалить и переустановить приложение, но я этого не хочу.Пожалуйста, помогите, я новичок в Android.

Ответы [ 2 ]

0 голосов
/ 01 июня 2018

(1) Увеличить (или просто изменить) версию базы данных
(2) Это приведет к onUpgrade() вызову метода
(3) Выполнить ваш запрос (для добавления нового столбца) в onUpgrade() method.

Здесь, в этом блоге, упоминается *1007*.

.

Иногда пользователь может обновить версию 1.5 с версии 1.1. Другими словами, ониможет пропустить другие версии между 1.1 и 1.5.Вы можете изменить базу данных пару раз от 1.1 до 1.5.Таким образом, чтобы дать пользователю выгоду от всех изменений в базе данных, вам нужно воспользоваться методом onUpgrade (), как показано ниже.

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
   if (oldVersion < 2) {
        db.execSQL(DATABASE_ALTER_TEAM_1);
   }
   if (oldVersion < 3) {
        db.execSQL(DATABASE_ALTER_TEAM_2);
   }
 }

Надеюсь, это поможет.

0 голосов
/ 01 июня 2018

Необходимо внести изменения в следующем методе класса базы данных

@Override 
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    String sql = "ALTER TABLE " + TABLE_SECRET + " ADD COLUMN " +
     "name_of_column_to_be_added" + " INTEGER"; 
    db.execSQL(sql);        
}     
...