Ошибка обновления базы данных SQLite в Android

При увеличении версии базы данных (обновлении), приложение вылетает. Ошибка возникает, когда я просто увеличиваю число версии БД, неважно какой код при этом будет исполняться (хоть без комманд)
package ru.geodevelop.geologicalnote.GNDataBase;
import android.content.ContentValues;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.provider.ContactsContract;
import java.util.Date;
/**
* Created by kelfo on 17.09.2016.
*/
public class GNDataBaseHelper extends SQLiteOpenHelper{
private static final String DB_NAME = "GNDataBase";
private static final int DB_VERSION = 3; //при увеличении версии приложение вылетает
public GNDataBaseHelper(Context context)
{
super(context, DB_NAME, null,DB_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
updateGNDataBase(db,0,DB_VERSION);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
updateGNDataBase(db,oldVersion,newVersion);
}
public static void insertObject(SQLiteDatabase db, String name)
{
ContentValues objectValues = new ContentValues();
objectValues.put("NAME", name);
db.insert("OBJECT", null,objectValues);
}
public static void insertObjectWithDate(SQLiteDatabase db, String name, Date date)
{
ContentValues objectValues = new ContentValues();
objectValues.put("NAME", name);
objectValues.put("GNDATA", date.getTime());
db.insert("OBJECT", null,objectValues);
}
private void updateGNDataBase(SQLiteDatabase db, int oldVersion, int newVersion)
{
if(oldVersion == 1)
{
db.execSQL("CREATE TABLE OBJECT ("
+ "_id INTEGER PRIMARY KEY AUTOINCREMENT,"
+ "NAME TEXT," +
"GNDATA INTEGER)");
Date nowData = new Date();
insertObjectWithDate(db,"TEST2", nowData);
}
if(oldVersion < 3)
{
db.execSQL("CREATE TABLE ROUTE ("+
"_id INTEGER PRIMARY KEY AUTOINCREMENT,"+
"NAME TEXT,"+
"DESCRIPTION TEXT,"+
"GNDATA INTEGER)");
}
}
}
18 сентября 2016 в 19:56
Ближайшие курсы

Как начать свой путь в разработке?
Онлайн-курс
25
февраля
Интенсив «Формулы и методы для планирования в Excel»
Онлайн-курс
25
февраля
Костыли и велосипеды: как не нужно писать код на C#
Онлайн-курс
25
февраля
Новые статьи

Архитектор информационных систем — новая профессия
38100

«Дизайн — инструмент для изменения мира»
114010

Разбираемся в типах Kotlin — Unit, Nothing, Any (и null)
97700
Новые вебинары

Правовые аспекты работы с блокчейн-проектами
08 апреля390

Работа тестировщика на разных IT-проектах
31 марта10

Как зарабатывать на разработке мобильных приложений? Как запустить свой стартап?
31 марта740
Новые темы

Mythological Riddles
java eclipse
0
ответов