每次我杀死应用程序时,数据库中的数据都会被删除?

问题描述 投票:0回答:1

在我的Android应用程序中,我使用房间数据库库将数据存储在数据库中。我可以在单个会话中存储和获取数据。这没有问题。问题是当我关闭应用程序并再次打开时,我没有获取存储在本地数据库中的数据。这些数据被删除。

我在谷歌中搜索过,其中一些人说使用databaseBuilder创建房间数据数据库实例。但我只使用它。但我收到了这个错误。

这是我的实例初始化。

这是我的 AppDtabase 类;

@Database(entities = {SelectedBuilding.class}, exportSchema =true,  version=2)
public abstract class AppDatabase extends RoomDatabase {
    private static AppDatabase INSTANCE;

    public abstract SelectedBuildingDao myDao();

    public static AppDatabase getAppDatabase(Context context){
        if (INSTANCE==null){
            INSTANCE= Room.databaseBuilder(context.getApplicationContext(),AppDatabase.class,"Selected_buildings")
                    .addMigrations(MIGRATION_1_2)
                    .build();
        }
        return INSTANCE;
    }

    public static void destroyInstance(){
        INSTANCE=null;
    }

    static final Migration MIGRATION_1_2 = new Migration(1, 2) {
        @Override
        public void migrate(SupportSQLiteDatabase database) {
            database.execSQL("ALTER TABLE selected_building ADD COLUMN Building_Id TEXT");
        }
    };



}

 INSTANCE= Room.databaseBuilder(context.getApplicationContext(),AppDatabase.class,"Selected_area").build();

谁能帮我解决这个问题? 预先感谢。

android database android-sqlite android-room local-database
1个回答
0
投票

找到答案了吗?我也遇到同样的问题

© www.soinside.com 2019 - 2024. All rights reserved.