sqlite3 多数据下性能如此低下, 是我不会用么?

jasonabc1 2016-03-16 11:06:56
数据库 11M 大小, 大约 15W 条数据, 27 个字段。

Release 下
做一次 Select , 目测用时

r = sqlite3_get_table(m_Sqlite,mSqlString,&mResult,&mRows,&mColumns,&m_cErrmsg);
大约用时几秒钟, 没关系, 我知道数据很大

可是, 没想到的是

sqlite3_free_table(mResult);

释放语句居然需要几分钟才能释放完毕, 这是我使用错误, 还是它的Debug ?

SQLITE_API void sqlite3_free_table(
char **azResult /* Result returned from from sqlite3_get_table() */
){
if( azResult ){
int i, n;
azResult--;
assert( azResult!=0 );
n = SQLITE_PTR_TO_INT(azResult[0]);
for(i=1; i<n; i++){ if( azResult[i] ) sqlite3_free(azResult[i]); }
sqlite3_free(azResult);
}
}
分是折开释放的, 但也用不了这么久吧。。。 这算什么啊~~

请问大家有更好的SQLLITE读取方案吗? 大数据, 多字段的。
...全文
198 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

2,209

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 其他数据库
社区管理员
  • 其他数据库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧