Android之实现Room升级需要给一个表增加一个字段

举报
chenyu 发表于 2021/07/26 22:48:19 2021/07/26
【摘要】 1、需求 实现Room升级需要给一个表增加一个字段。                         2、Room升级介绍 Room 持久化库中通过使用 Migration 类保存用户数据。每个 Migration 类指定起始版...

1、需求

实现Room升级需要给一个表增加一个字段。

 

 

 

 

 

 

 

 

 

 

 

 

2、Room升级介绍

Room 持久化库中通过使用 Migration 类保存用户数据。每个 Migration 类指定起始版本和结束版本。在运行时,Room 运行每个 Migration 类的 migrate() 方法,使用正确的顺序将数据库迁移到后面的版本

1、Android提供了一个名为Migration的类,完成Room的升级

public Migration(int startVersion, int endVersion)
 

2、Migration两个参数,startVersion和endVersion。startVersion表示当前版本(手机上安装的版本),endVersion表示将要升级到的版本。如果你的手机中的应用程序数据库的版本为1,那么下方Migration会将你的数据库版本从1升级到2


  
  1. private val migration_1_to_2 = object : Migration(1, 2) {
  2. override fun migrate(database: SupportSQLiteDatabase) {
  3. }
  4. }

如果你的数据库需要从2升级到3,则需要写这样一个Migration


  
  1. private val migration_2_to_3 = object : Migration(2, 3) {
  2. override fun migrate(dat

文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。

原文链接:chenyu.blog.csdn.net/article/details/115058166

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。