开源一个适用iOS的数据库表结构更新机制的代码
将前段时间开源的代码。公布一下:
ARDBConfig
On the iOS, provide a database table structure update mechanism, ensure that the user in any version of the installer, the database structure to ensure adapter.
(在iOS上。提供一个数据库表结构更新的机制,保证用户不管从哪个版本号安装程序,数据库结构保证适配。
)
如:用户A的数据库版本号是v1,用户B是v2。用户C没装过App;如今,全部用户安装并执行最新App(数据库版本号是v3)后。用户A的数据库将会“v1->v2->v3”顺序升级,用户B的数据库将会“v2->v3”顺序升级。用户C的数据库将会“v1->v2->v3”顺序升级。
源代码下载地址:https://github.com/longjun3000/ARDBConfig
怎样使用?
1、第一次创建project,新建数据库的情况(数据库版本号为1):
(1)新建一个继承于“RLDBConfigBase”的类,如“DBConfigLogic”。
(2)加入int类型仅仅读属性“dbVersion”。实现get方法并return 1;
(3)加入覆盖父类方法“onCreate”,并在方法内写下第一次创建数据表结构的SQL及代码。
(4)在程序启动时(如“AppDelegate.m”)。实例化“DBConfigLogic”类并调用“checkDatabase”方法,就可以完毕数据库的初始化动作。
2、App在某一版本号数据库结构须要修改时(数据库版本号升为2):
(1)在步骤1的基础上,改动“dbVersion”属性方法的返回值为return 2。
(2)在步骤1的基础上,加入覆盖父类方法“onUpgrade”,使用本文“onUpgrade”内示范代码。仅仅需改动switch内的代码。
(3)假设在数据库结构升级完毕后须要做一些兴许数据处理,能够加入覆盖父类的方法“didChecked”,写入数据库操作的代码。
(4)在程序启动时(如“AppDelegate.m”),实例化“DBConfigLogic”类并调用“checkDatabase”方法,就可以完毕数据库的初始化和升级动作。
最新文章
- iOS App 不支持http协议 App Transport Security has blocked a cleartext HTTP (http://)
- 自定义AlertDialog控件的使用(AndroidStudio)
- Vim 强大的配置
- c++标准库和stl关系
- IOS socket开发基础
- python--迭代--7
- ElasticSearch-PHP的API使用(二)
- Sicily 1931. 卡片游戏
- CentOS下安装两个或多个Tomcat7
- NGUI: Documentation
- unity客户端基本框架(转载)
- Spring注解 系列之Spring常用注解总结
- sql语句表示不等于
- validatord的使用方法理解
- android布局管理器
- shell 命令 ls -a
- [py][mx]django get方法返回login页面
- js数组去重的几种方法
- Hadoop HBase概念学习系列之hbase shell中执行java方法(高手必备)(二十五)
- Foundations of Machine Learning: The PAC Learning Framework(1)