From 92a426c85b9578da028673e9a0393f1c22aa57f3 Mon Sep 17 00:00:00 2001 From: yibo Date: Thu, 11 Jun 2026 01:02:43 +0800 Subject: [PATCH] fix(goal): 修正 MIGRATION_23_24 导致启动崩溃 --- lifelog-recorder/app/src/main/kotlin/com/lemon/lifelog/data/AppDatabase.kt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lifelog-recorder/app/src/main/kotlin/com/lemon/lifelog/data/AppDatabase.kt b/lifelog-recorder/app/src/main/kotlin/com/lemon/lifelog/data/AppDatabase.kt index 4791054..4173aa4 100644 --- a/lifelog-recorder/app/src/main/kotlin/com/lemon/lifelog/data/AppDatabase.kt +++ b/lifelog-recorder/app/src/main/kotlin/com/lemon/lifelog/data/AppDatabase.kt @@ -254,14 +254,16 @@ abstract class AppDatabase : RoomDatabase() { } } - /** P2 #6/#7:goals 新表 + followups.goalId 挂载字段。 */ + /** P2 #6/#7:goals 新表 + followups.goalId 挂载字段。 + * 注意:status 不能带 DEFAULT 'active',Room 期望 defaultValue='undefined'(无 @ColumnInfo defaultValue); + * 也不加 index——@Entity 上没有 @Index,Room expected indices=[]。 */ private val MIGRATION_23_24 = object : Migration(23, 24) { override fun migrate(db: SupportSQLiteDatabase) { db.execSQL( "CREATE TABLE IF NOT EXISTS `goals` (" + "`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, " + "`text` TEXT NOT NULL, " + - "`status` TEXT NOT NULL DEFAULT 'active', " + + "`status` TEXT NOT NULL, " + "`deadline` TEXT, " + "`parentGoalId` INTEGER, " + "`personId` INTEGER, " + @@ -269,7 +271,6 @@ abstract class AppDatabase : RoomDatabase() { "`createdAt` INTEGER NOT NULL, " + "`updatedAt` INTEGER NOT NULL)" ) - db.execSQL("CREATE INDEX IF NOT EXISTS `index_goals_status` ON `goals` (`status`)") db.execSQL("ALTER TABLE `followups` ADD COLUMN `goalId` INTEGER") } } -- libgit2 0.21.4