加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

SQLite批量插入IOS代码示例

发布时间:2020-12-12 19:38:04 所属栏目:百科 来源:网络整理
导读:参考前一篇博文: 《如何向SQLite插入大量记录和其他一些使用心得》 SQLite批量插入的IOS 代码示例(因为使用的是C API,C/C++用法与之类似): -------------------------代码的分割线------------------------- // 打开数据库的部分省略 if (![self beginT
参考前一篇博文: 《如何向SQLite插入大量记录和其他一些使用心得》 SQLite批量插入的IOS 代码示例(因为使用的是C API,C/C++用法与之类似): -------------------------代码的分割线------------------------- // 打开数据库的部分省略 if (![self beginTransaction]) { DLog(@ "开始事务失败 "); return; } sqlite3_stmt* stmt = NULL; if (sqlite3_prepare(db,[sql UTF8String],-1,&stmt,NULL) != SQLITE_OK) { NSLog(@"数据库prepareStatment失败:%@",sql); return; } for (Record* record in records) { int bindPos= 1; // 绑定位置从1开始 if (sqlite3_bind_int( stmt,(bindPos++),[record intValue]) != SQLITE_OK) { NSLog(@ "绑定失败:%@ ",[[NSString alloc] initWithUTF8String:sqlite3_errmsg( db)]); continue; } if (sqlite3_bind_double( stmt, (bindPos++), [record doubleValue]) != SQLITE_OK) { NSLog(@ "绑定失败:%@ ",[[NSString alloc] initWithUTF8String:sqlite3_errmsg( db)]); continue; } if (sqlite3_bind_text( stmt, (bindPos++),[ [record stringValue]UTF8String],SQLITE_STATIC) != SQLITE_OK) { NSLog(@ "绑定失败:%@ ",[[NSString alloc] initWithUTF8String:sqlite3_errmsg( db)]); continue; } if (sqlite3_step( stmt) != SQLITE_DONE) { // 执行插入 NSLog(@ "%@ ",[[NSString alloc] initWithUTF8String:sqlite3_errmsg(mDB)]); continue; } sqlite3_reset( stmt); // 清空绑定数据 } sqlite3_finalize( stmt); if (![self commitTransaction]) { DLog(@ "提交事务失败 "); return; }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读