iOS数据库版本升级问题

1.判断数据库版本号和保存数据库版本号

NSString* constkdbManagerVersion =@"DBManagerVersion";
const static NSIntegerDB_MANAGER_VER =1;

保存新版本号存储到NSUserDefaults中

2.数据库升级

// 获取旧版本号

// 升级

// 判断是否需要升级

// 执行版本1到版本2的更新

3.数据库升级的SQL语句操作
// 变更数据库表为一个旧数据表

NSString*sqlStr =  [NSString stringWithFormat:@"ALTER TABLE %@ RENAME TO %@",self.tableName, [self.tableName stringByAppendingString:@"_Old"] 

// 执行SQL语句操作

[db executeUpdate:sqlStr];

// 创建新的数据表

NSString*executeStr = [NSString stringWithFormat:@"create table if not exists %@ (LocID integer primary key autoincrement not null,messageID text unique,Content text,TypeName text,SendTime text,CreateTime integer,Status integer,msgtype text,apply_id text,userid text,message_last_id text)",self.tableName];

// 从旧数据表把旧数据插入新的数据表中

// 删除旧的数据表

你可能感兴趣的:(iOS数据库版本升级问题)