Как добавить новый столбец в базу данных Android SQLite - PullRequest
2 голосов
/ 07 сентября 2011

Я хотел добавить новый столбец в базу данных Android SQLite, а затем получил ошибки. Что мне делать и как? Я думал, что должен удалить таблицу и создать новую, но я не знаю, как.

Ответы [ 2 ]

5 голосов
/ 07 сентября 2011

Самый простой способ сделать это - добавить немного SQL к методу onUpgrade() в вашем классе SQLiteOpenHelper. Что-то вроде:

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

    // If you need to add a column
    if (newVersion > oldVersion) {
        db.execSQL("ALTER TABLE foo ADD COLUMN new_column INTEGER DEFAULT 0");
    }
}

Очевидно, что SQL будет отличаться в зависимости от определения столбца.

0 голосов
/ 09 августа 2012
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

    // If you need to add a column
    if (newVersion > oldVersion) {
        db.execSQL("ALTER TABLE foo ADD COLUMN new_column INTEGER DEFAULT 0");
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...