码迷,mamicode.com
首页 > 移动开发 > 详细

开源一个适用iOS的数据库表结构更新机制的代码

时间:2015-06-28 09:51:32      阅读:399      评论:0      收藏:0      [点我收藏+]

标签:ios开发   ios   db   database   sqlite   

将前段时间开源的代码,发布一下:

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、第一次创建工程,新建数据库的情况(数据库版本为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的数据库表结构更新机制的代码

标签:ios开发   ios   db   database   sqlite   

原文地址:http://blog.csdn.net/cooldragon/article/details/46665987

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!