private static final String TABLE_MAIN_CREATE = "CREATE TABLE IF NOT EXISTS " + TABLE_MAIN_NAME + " (a INTEGER, b LONG, c TEXT, d TEXT, e DATETIME, f TEXT)";
private static final String TABLE_MAIN_UPGRADE = "ALTER TABLE " + TABLE_MAIN_NAME + " ADD Column f TEXT";
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(TABLE_MAIN_CREATE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
if (oldVersion < newVersion) {
db.execSQL(TABLE_MAIN_UPGRADE);
}
onCreate(db);
}
Предыдущая версия db была без поля «f». Это правильный способ обновления БД? Нужно ли мне onCreate (db) в onUpgrade?Каков правильный способ обновления sqllite db?
Я сделал это несколько раз, и каждый раз, когда я получил еще одно исключения: 1) таблицы уже существует, так что я добавил «IF NOT EXISTS» 2) не мог читать строки 0, Col 5 ошибки здесь я потерял его ... .
Это правильный способ обновления БД?
Я хочу, чтобы мои данные
удалить и переустановить приложение – Raghunandan
перейдите по этой ссылке http://stackoverflow.com/a/14236970/942224 –
Я хочу сохранить свои данные, кроме того, когда пользователи переустанавливают приложение в Google Play, оно снижает рейтинг поиска –