android mysql移植_Android — Room 数据库跳跃式升级(Migration)

本文介绍了在Android开发中,如何处理Room数据库的跳跃式版本升级,包括直接从低版本升级到高版本的情况。通过创建和应用Migration对象,可以无缝地在不同版本间进行表结构的修改和数据迁移。
摘要由CSDN通过智能技术生成

前言

在平时的开发时,数据库的升级并不总是按部就班的从 version: 1->2,2->3,3->4。总是会出现 version:1->3,或 2->4 的情况。这时候我们又该怎么办呢?

方法很简单。当用户升级 APP 时,我们替用户升级数据库版本。

具体做法:

version:1->2

static final Migration MIGRATION_1_2 = new Migration(1, 2) {

@Override

public void migrate(SupportSQLiteDatabase database) {

//do something

}

};

version:2->3

static final Migration MIGRATION_2_3 = new Migration(2, 3) {

@Override

public void migrate(SupportSQLiteDatabase database) {

database.execSQL("ALTER TABLE student "

+ " ADD COLUMN phone_num TEXT");

}

};

把migration 添加到 Room database builder:

database = Room.databaseBuilder(context.getApplicationContext(),

Stu

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值