Android数据库Room框架升级

创建Migration

static final Migration MIGRATION_1_2 = new Migration(1, 2) {
        @Override
        public void migrate(SupportSQLiteDatabase database) {
            //在表device_init中添加TEXT字段mimc
            database.execSQL("ALTER TABLE device_init"
                    + " ADD COLUMN mimc TEXT");
            //在表device_init中添加TEXT字段appId
            database.execSQL("ALTER TABLE device_init"
                    + " ADD COLUMN appId TEXT");
            //创建新表connect_prod并添加对应的字段
            //PRIMARY KEY(id)将id设置为主键,NOT NULL设置对应的键不能为空
            database.execSQL("CREATE TABLE connect_prod(icon TEXT,local_file_path TEXT,action_res TEXT,url TEXT,idx TEXT,thumb_image_url TEXT," +
                    "title TEXT,name TEXT,online TEXT,down TEXT,type TEXT,down_load_complete INTEGER NOT NULL,id TEXT NOT NULL,res TEXT,PRIMARY KEY(id))");
        }
    };

在数据库中添加Migration

{
        Room.databaseBuilder(context.getApplicationContext(),
                             HuLianDatabase.class, "RoomUse.db")
                             .addMigrations(MIGRATION_1_2)
                             .build();
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容