From 7b80692e038ec9b1f06fbfdc61498c6ff3f97d71 Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期四, 28 三月 2024 15:13:25 +0800 Subject: [PATCH] 修改卡结构 --- app/src/main/java/com/dayu/rechargeqh/dao/AppDatabase.java | 28 +++++++++++++++++++++++++++- 1 files changed, 27 insertions(+), 1 deletions(-) diff --git a/app/src/main/java/com/dayu/rechargeqh/dao/AppDatabase.java b/app/src/main/java/com/dayu/rechargeqh/dao/AppDatabase.java index 7839100..9920523 100644 --- a/app/src/main/java/com/dayu/rechargeqh/dao/AppDatabase.java +++ b/app/src/main/java/com/dayu/rechargeqh/dao/AppDatabase.java @@ -1,7 +1,10 @@ package com.dayu.rechargeqh.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.rechargeqh.dbBean.AdminDataBean; import com.dayu.rechargeqh.dbBean.CardData; @@ -14,6 +17,7 @@ import com.dayu.rechargeqh.dbBean.PassWordCardBean; import com.dayu.rechargeqh.dbBean.PowerBean; import com.dayu.rechargeqh.dbBean.RechargeBean; +import com.dayu.rechargeqh.dbBean.RegionBean; import com.dayu.rechargeqh.dbBean.UserCardBean; /** @@ -22,7 +26,7 @@ * Date: 2023-11-05 16:23 * Description: */ -@Database(entities = {PassWordCardBean.class,CardData.class, DeviceNumber.class, IdentityBean.class, DomainBean.class, ElectricPriceBean.class, IpBean.class, AdminDataBean.class, PassWordBean.class, UserCardBean.class, RechargeBean.class, PowerBean.class}, version = 3, exportSchema = false) +@Database(entities = {RegionBean.class, PassWordCardBean.class, CardData.class, DeviceNumber.class, IdentityBean.class, DomainBean.class, ElectricPriceBean.class, IpBean.class, AdminDataBean.class, PassWordBean.class, UserCardBean.class, RechargeBean.class, PowerBean.class}, version = 4, exportSchema = false) public abstract class AppDatabase extends RoomDatabase { @@ -49,4 +53,26 @@ 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"); + } + }; + } -- Gitblit v1.8.0