Ошибка при обновлении базы, cra sh на производстве - PullRequest
0 голосов
/ 06 апреля 2020

это журнал:

java.lang.RuntimeException: 
  at android.app.ActivityThread.performResumeActivity (ActivityThread.java:4410)
  at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:4442)
  at android.app.servertransaction.ResumeActivityItem.execute (ResumeActivityItem.java:52)
  at android.app.servertransaction.TransactionExecutor.executeLifecycleState (TransactionExecutor.java:176)
  at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:97)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2146)
  at android.os.Handler.dispatchMessage (Handler.java:107)
  at android.os.Looper.loop (Looper.java:237)
  at android.app.ActivityThread.main (ActivityThread.java:7777)
  at java.lang.reflect.Method.invoke (Native Method)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:493)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1047)
Caused by: android.database.sqlite.SQLiteException: 
  at android.database.sqlite.SQLiteConnection.nativePrepareStatement (Native Method)
  at android.database.sqlite.SQLiteConnection.acquirePreparedStatement (SQLiteConnection.java:1364)
  at android.database.sqlite.SQLiteConnection.prepare (SQLiteConnection.java:803)
  at android.database.sqlite.SQLiteSession.prepare (SQLiteSession.java:590)
  at android.database.sqlite.SQLiteProgram.<init> (SQLiteProgram.java:62)
  at android.database.sqlite.SQLiteStatement.<init> (SQLiteStatement.java:33)
  at android.database.sqlite.SQLiteDatabase.executeSql (SQLiteDatabase.java:2321)
  at android.database.sqlite.SQLiteDatabase.execSQL (SQLiteDatabase.java:2249)
  at travel_memories.ceo.com.travelmemories.MyDatabaseOpenHelper.onUpgrade (AppDataBase.kt:77)
  at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked (SQLiteOpenHelper.java:493)
  at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase (SQLiteOpenHelper.java:391)
  at org.jetbrains.anko.db.ManagedSQLiteOpenHelper.openDatabase (Database.kt:186)
  at org.jetbrains.anko.db.ManagedSQLiteOpenHelper.use (Database.kt:177)
  at travel_memories.ceo.com.travelmemories.MyDatabaseOpenHelper.getFirstUser (AppDataBase.kt:22)
  at travel_memories.ceo.com.travelmemories.InitialActivity.onResume (InitialActivity.kt:71)
  at android.app.Instrumentation.callActivityOnResume (Instrumentation.java:1454)
  at android.app.Activity.performResume (Activity.java:8129)
  at android.app.ActivityThread.performResumeActivity (ActivityThread.java:4400)

строка 77 равна db.execSQL("ALTER TABLE User ADD COLUMN MAXLEVEL INTEGER DEFAULT 0")

Веселье onUpdate:

override fun onUpgrade(db: SQLiteDatabase, oldVersion: Int, newVersion: Int) {
        db.dropTable("User", true)
        if (3 > oldVersion) {
            db.execSQL("ALTER TABLE User ADD COLUMN MAXLEVEL INTEGER DEFAULT 0")
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...