开源一个适用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”方法,就可以完毕数据库的初始化和升级动作。


原文地址:https://www.cnblogs.com/mengfanrong/p/5160544.html