| package com.dayu.qihealonelibrary.dao; | 
|   | 
| import androidx.annotation.NonNull; | 
| import androidx.room.Database; | 
| import androidx.room.RoomDatabase; | 
| import androidx.room.migration.Migration; | 
| import androidx.sqlite.db.SupportSQLiteDatabase; | 
|   | 
| import com.dayu.qihealonelibrary.dbBean.AdminDataBean; | 
| import com.dayu.qihealonelibrary.dbBean.CardData; | 
| import com.dayu.qihealonelibrary.dbBean.DeviceNumber; | 
| import com.dayu.qihealonelibrary.dbBean.DomainBean; | 
| import com.dayu.qihealonelibrary.dbBean.ElectricPriceBean; | 
| import com.dayu.qihealonelibrary.dbBean.IdentityBean; | 
| import com.dayu.qihealonelibrary.dbBean.IpBean; | 
| import com.dayu.qihealonelibrary.dbBean.PassWordCardBean; | 
| import com.dayu.qihealonelibrary.dbBean.PowerBean; | 
| import com.dayu.qihealonelibrary.dbBean.RechargeBean; | 
| import com.dayu.qihealonelibrary.dbBean.RegionBean; | 
| import com.dayu.qihealonelibrary.dbBean.UserCardBean; | 
|   | 
|   | 
| /** | 
|  * Copyright (C), 2023, | 
|  * Author: zuo | 
|  * Date: 2023-11-05 16:23 | 
|  * Description: | 
|  */ | 
| @Database(entities = {RegionBean.class, PassWordCardBean.class, CardData.class, DeviceNumber.class, IdentityBean.class, DomainBean.class, ElectricPriceBean.class, IpBean.class, AdminDataBean.class,  UserCardBean.class, RechargeBean.class, PowerBean.class}, version = com.dayu.baselibrary.dao.AppDatabase.version, exportSchema = false) | 
| public abstract class QHAloneAppDatabase extends RoomDatabase { | 
|   | 
|   | 
|     public abstract AdminDataDao adminDao(); | 
|   | 
|   | 
|   | 
|     public abstract UserCardDao userCardDao(); | 
|   | 
|     public abstract RechargeDao rechargeDao(); | 
|   | 
|     public abstract PowerDao powerDao(); | 
|   | 
|     public abstract IpDao ipDao(); | 
|   | 
|     public abstract ElectricPriceDao electricPriceDao(); | 
|   | 
|     public abstract DomainPortDao domainPortDao(); | 
|   | 
|     public abstract IdentityDao identityDao(); | 
|   | 
|     public abstract DeviceNumberDao deviceNumberDao(); | 
|   | 
|     public abstract CardDataDao cardDataDao(); | 
|   | 
|     public abstract PassWordCardDao passWordCardDao(); | 
|   | 
|     public abstract RegionDao regionDao(); | 
|   | 
|     public static final Migration MIGRATION_3_4 = new Migration(3, 4) { | 
|         @Override | 
|         public void migrate(@NonNull SupportSQLiteDatabase database) { | 
|             // 在这里添加您的迁移代码 | 
|             database.execSQL("CREATE TABLE IF NOT EXISTS `RegionBean_temp` " + | 
|                     "(`region` TEXT, `controllerCodel` TEXT, `id` INTEGER, PRIMARY KEY(`id`))"); | 
|   | 
|             // 复制数据到新表 | 
|             database.execSQL("INSERT INTO RegionBean_temp (region, controllerCodel, id) " + | 
|                     "SELECT region, controllerCodel, id FROM RegionBean"); | 
|   | 
|             // 删除旧表 | 
|             database.execSQL("DROP TABLE RegionBean"); | 
|   | 
|             // 重命名新表为旧表名 | 
|             database.execSQL("ALTER TABLE RegionBean_temp RENAME TO RegionBean"); | 
|         } | 
|     }; | 
|   | 
| } |