您的位置:首页 > 移动开发

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);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: