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

sqlite内存泄漏解决办法

发布时间:2020-12-12 19:53:22 所属栏目:百科 来源:网络整理
导读:sqlite内存泄漏解决办法 2012-09-26 13:54:54 |分类: 默认分类 | 举报 | 字号 订阅 用cppsqlite发生内存泄漏,最后发现是把事物当普通语句去执行了。 其实本质是下面的: 1. 在使用 sqlite3_get_table( sqlite3 *db,/* An open database */ const char *zSq

sqlite内存泄漏解决办法

2012-09-26 13:54:54|分类: 默认分类 |举报 |字号订阅

用cppsqlite发生内存泄漏,最后发现是把事物当普通语句去执行了。

其实本质是下面的:

1. 在使用

sqlite3_get_table(
sqlite3 *db,/* An open database */
const char *zSql,/* SQL to be evaluated */
char ***pazResult,/* Results of the query */
int *pnRow,/* Number of result rows written here */
int *pnColumn,/* Number of result columns written here */
char **pzErrmsg /* Error msg written here */
);

后,要调用 sqlite3_free_table(pazResult) 来释放结果集,防止内存泄露


2. 在使用

sqlite3_exec(
sqlite3*,/* An open database */
const char *sql,/* SQL to be evaluated */
int (*callback)(void*,int,char**,char**),/* Callback function */
void *,/* 1st argument to callback */
char **errmsg /* Error msg written here */
);

后,要调用 sqlite3_free(*errmsg) 来释放错误信息,防止内存泄露

(编辑:李大同)

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

    推荐文章
      热点阅读