greenDao数据库升级
来源:互联网 发布:长远汽配软件视频教程 编辑:程序博客网 时间:2024/05/01 21:08
GreenDaoUpgradeHelper
GreenDaoUpgradeHelper是一个greenDao的数据库升级帮助类。使用它可以很容易解决数据库升级问题,只需一行代码。
使用说明
1.在根目录的build.gradle文件的repositories内添加如下代码:
allprojects {repositories {...maven { url "https://jitpack.io" }}}
2.添加依赖(greendao 3.0及以上)
dependencies { compile 'org.greenrobot:greendao:3.2.0' compile 'com.github.yuweiguocn:GreenDaoUpgradeHelper:v2.0.0'}
如果你使用的greendao是3.0以前的版本,请使用下面的依赖:
dependencies { compile 'de.greenrobot:greendao:2.0.0' compile 'com.github.yuweiguocn:GreenDaoUpgradeHelper:v1.0.1'}
3.添加一个新类继承DaoMaster.OpenHelper,添加构造函数并实现onUpgrade方法,在onUpgrade方法添加如下代码即可,参数为所有的Dao类:
MigrationHelper.migrate(db, new MigrationHelper.ReCreateAllTableListener() { @Override public void onCreateAllTables(Database db, boolean ifNotExists) { DaoMaster.createAllTables(db, ifNotExists); } @Override public void onDropAllTables(Database db, boolean ifExists) { DaoMaster.dropAllTables(db, ifExists); } },TestDataDao.class, TestData2Dao.class, TestData3Dao.class);
完整代码:
public class MySQLiteOpenHelper extends DaoMaster.OpenHelper { public MySQLiteOpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory) { super(context, name, factory); } @Override public void onUpgrade(Database db, int oldVersion, int newVersion) { MigrationHelper.migrate(db, new MigrationHelper.ReCreateAllTableListener() { @Override public void onCreateAllTables(Database db, boolean ifNotExists) { DaoMaster.createAllTables(db, ifNotExists); } @Override public void onDropAllTables(Database db, boolean ifExists) { DaoMaster.dropAllTables(db, ifExists); } },TestDataDao.class, TestData2Dao.class, TestData3Dao.class); }}
4.初始化
//MigrationHelper.DEBUG = true; //如果你想查看日志信息,请将DEBUG设置为trueMySQLiteOpenHelper helper = new MySQLiteOpenHelper(this, "test.db", null); daoMaster = new DaoMaster(helper.getWritableDatabase());
阅读全文
0 0
- GreenDao数据库结构升级
- GreenDAO数据库版本升级
- GreenDAO数据库版本升级
- GreenDao数据库升级解决方案
- greendao数据库升级
- greenDao数据库升级
- Greendao 数据库升级解决方案
- GreenDao之数据库升级
- greenDao数据库升级
- GreenDao数据库升级
- GreenDao数据库升级方案
- greendao 数据库升级
- greenDao数据库升级
- GreenDao操作数据库版本升级
- greendao数据库升级(数据库表的迁移)
- GreenDao设置数据库路径以及数据库升级
- GreenDAO数据库升级问题的解决方法
- GreenDao使用CRUD及数据库结构升级
- CSS中的blcok、inline和inline-block的概念和区别
- java发送http请求
- Linux 下的ln命令
- nodeJs关掉服务
- RxJava 方法备忘录
- greenDao数据库升级
- 【bzoj1783】[Usaco2010 Jan]Taking Turns
- 2017.11.3笔记
- Vuex核心概览
- 十一月三日课堂笔记
- st表
- 封装日期时间自定义格式方法
- Error:Unsupported method: BaseConfig.getApplicationIdSuffix().
- 概率图模型