| | |
| | | } |
| | | } |
| | | |
| | | // 数据库迁移策略:从版本4迁移到版本5 |
| | | private val MIGRATION_4_5 = object : Migration(4, 5) { |
| | | override fun migrate(database: SupportSQLiteDatabase) { |
| | | // 创建管理卡表 |
| | | database.execSQL(""" |
| | | CREATE TABLE IF NOT EXISTS `manager_card` ( |
| | | `id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, |
| | | `cardAddress` TEXT NOT NULL, |
| | | `orderId` TEXT NOT NULL, |
| | | `isReported` INTEGER NOT NULL DEFAULT 0, |
| | | `isCardWritten` INTEGER NOT NULL DEFAULT 0, |
| | | `operatorId` TEXT NOT NULL DEFAULT '', |
| | | `createTime` INTEGER NOT NULL |
| | | ) |
| | | """.trimIndent()) |
| | | } |
| | | } |
| | | |
| | | fun getInstance(context: Context): AppDataBase { |
| | | if (baseDao == null) { |
| | | baseDao = Room.databaseBuilder<AppDataBase>( |
| | | context, |
| | | AppDataBase::class.java, |
| | | SqlitePath + "ConfigurationData_generalV1" |
| | | ).allowMainThreadQueries().build() |
| | | ).allowMainThreadQueries() |
| | | .addMigrations(MIGRATION_3_4, MIGRATION_4_5) // 添加迁移策略 |
| | | .build() |
| | | } |
| | | return baseDao as AppDataBase |
| | | } |
| | |
| | | AppDataBase::class.java, |
| | | "GeneralLibrary.db" |
| | | ) |
| | | .addMigrations(MIGRATION_3_4) // 添加迁移策略 |
| | | .addMigrations(MIGRATION_3_4, MIGRATION_4_5) // 添加迁移策略 |
| | | .build() |
| | | } |
| | | } |