iOS app更新数据库数据迁移问题
2015-11-09 11:54
483 查看
iOS App初始化或者升级,涉及本地数据库迁移的问题
http://www.bubuko.com/infodetail-312724.html
sqlite有alter命令,可以增加字段
//对于老用户,在数据库表中增加字段
char *errMsg;
NSString *searchSql = [NSString stringWithFormat:@"select sql from sqlite_master where tbl_name='表名' and type='table'"];
const char *sql_Txt = [searchSql UTF8String];
sqlite3_prepare_v2(数据库, sql_Txt, -1, &statement, NULL);
if(sqlite3_step(statement) == SQLITE_ROW){
char *sqlTxt= (char *)sqlite3_column_text(statement,0);
NSString *sqlString = [[NSString alloc] initWithUTF8String:sqlTxt];
// NSLog(@"%@", sqlString);
if ([sqlString rangeOfString: @"stockCode"].length <= 0 ) {
// NSLog(@"%@", @"没有找到字段");
const char *sql_add = "ALTER TABLE 表名 ADD 字段名 字段类型";
if (sqlite3_exec(数据库, sql_add, NULL, NULL, &errMsg)!=SQLITE_OK) {
// NSLog(@"%@", @"成功插入字段");
}
}
sqlite3_finalize(statement);
}
http://www.bubuko.com/infodetail-312724.html
sqlite有alter命令,可以增加字段
//对于老用户,在数据库表中增加字段
char *errMsg;
NSString *searchSql = [NSString stringWithFormat:@"select sql from sqlite_master where tbl_name='表名' and type='table'"];
const char *sql_Txt = [searchSql UTF8String];
sqlite3_prepare_v2(数据库, sql_Txt, -1, &statement, NULL);
if(sqlite3_step(statement) == SQLITE_ROW){
char *sqlTxt= (char *)sqlite3_column_text(statement,0);
NSString *sqlString = [[NSString alloc] initWithUTF8String:sqlTxt];
// NSLog(@"%@", sqlString);
if ([sqlString rangeOfString: @"stockCode"].length <= 0 ) {
// NSLog(@"%@", @"没有找到字段");
const char *sql_add = "ALTER TABLE 表名 ADD 字段名 字段类型";
if (sqlite3_exec(数据库, sql_add, NULL, NULL, &errMsg)!=SQLITE_OK) {
// NSLog(@"%@", @"成功插入字段");
}
}
sqlite3_finalize(statement);
}
相关文章推荐
- mac 搭建 内网微信服务 ngrok
- Android打包的那些事
- WebView加载页面,常见的问题
- 怎样进行微信营销才比较好
- android 注册广播代码(备用)
- 深入浅出 - Android系统移植与平台开发(十)- Android编译系统与定制Android平台系统
- Android:LayoutInflater 如何使用
- swift 对象方法
- swift 对象方法
- 深入浅出 - Android系统移植与平台开发(十一)- Android系统的定制
- iOS开发 - Xcode7下解决使用三方库出现的warning问题
- (三期)Hybrid混合开发之Appcan技术
- iOS自动布局Auto Layout 与 SizeClass
- 简要的汇总Android
- swift 运算属性
- swift 运算属性
- android textview 行间距设置
- 学习笔记Cocos2d-x之内存管理
- iphone手机端图片错位修正的js代码
- swift 属性值监测