質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

Q&A

0回答

194閲覧

Roomに列を追加したいです

diego0909090909

総合スコア0

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

0グッド

0クリップ

投稿2023/02/07 04:01

Roomに列を追加したくてautoMigrationを使用して移行しversionも上げたのですがMigration didn't properly handleのエラーが出てExpectedとFoundが一致しません。修正方法をおしえていただけると幸いです。

発生している問題・エラーメッセージ

E/AndroidRuntime:

1 Process: com.example.jettodoapp, PID: 15730 2 java.lang.IllegalStateException: Migration didn't properly handle: Task(com.example.jettodoapp.Task). 3 Expected: 4 TableInfo{name='Task', columns={description=Column{name='description', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, id=Column{name='id', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=1, defaultValue='undefined'}, title=Column{name='title', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, description2=Column{name='description2', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue=''0''}}, foreignKeys=[], indices=[]} 5 Found: 6 TableInfo{name='Task', columns={id=Column{name='id', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=1, defaultValue='undefined'}, title=Column{name='title', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, description=Column{name='description', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}}, foreignKeys=[], indices=[]} 7 at androidx.room.RoomOpenHelper.onUpgrade(RoomOpenHelper.kt:94) 8 at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.onUpgrade(FrameworkSQLiteOpenHelper.kt:252) 9 at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:416) 10 at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:316) 11 at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.getWritableOrReadableDatabase(FrameworkSQLiteOpenHelper.kt:231) 12 at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.innerGetDatabase(FrameworkSQLiteOpenHelper.kt:189) 13 at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.getSupportDatabase(FrameworkSQLiteOpenHelper.kt:151) 14 at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper.getWritableDatabase(FrameworkSQLiteOpenHelper.kt:104) 15 at androidx.room.RoomDatabase.inTransaction(RoomDatabase.kt:629) 16 at androidx.room.RoomDatabase.assertNotSuspendingTransaction(RoomDatabase.kt:448) 17 at androidx.room.RoomDatabase.query(RoomDatabase.kt:477) 18 at androidx.room.util.DBUtil.query(DBUtil.kt:75) 19 at com.example.jettodoapp.TaskDao_Impl$7.call(TaskDao_Impl.java:162) 20 at com.example.jettodoapp.TaskDao_Impl$7.call(TaskDao_Impl.java:159) 21 at androidx.room.CoroutinesRoom$Companion$createFlow$1$1$1.invokeSuspend(CoroutinesRoom.kt:128) 22 at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) 23 at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) 24 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) 25 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) 26 at java.lang.Thread.run(Thread.java:923) 27 Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [androidx.compose.ui.platform.MotionDurationScaleImpl@f803579, androidx.compose.runtime.BroadcastFrameClock@e77d2be, StandaloneCoroutine{Cancelling}@82ecf1f, AndroidUiDispatcher@3d26c]

該当のソースコード

@Entity data class Task( @PrimaryKey(autoGenerate = true)val id:Int = 0, var title: String, var description: String, @ColumnInfo(defaultValue="0") var description2: String, ) @Database( entities = [Task::class], version = 2, exportSchema =true, autoMigrations = [ AutoMigration (from = 1, to = 2) ]) abstract class AppDatabase : RoomDatabase() { abstract fun taskDao(): TaskDao }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問