woaidongmao

文章均收录自他人博客,但不喜标题前加-[转贴],因其丑陋,见谅!~
随笔 - 1469, 文章 - 0, 评论 - 661, 引用 - 0
数据加载中……

SQLite3的提交事务代码

在对sqlite3 insert into 等操作时速度比较慢。

原因是因为它是已文件的形式存在磁盘中,每次访问时都要打开一次文件,

如果对数据库进行大量的操作,那时很慢。

解决办法用事务的形式提交:因为我们开始事务后,进行的大量操作的语句都保存在内存中,当提交时才全部写入数据库,此时,数据库文件也就只用打开一次。

在进行大量的操作前使用如下语句:

rc = sqlite3_exec(db, "begin;", 0,0, &szErrMsg);

for (...)

{

//insert into operate

}

rc = sqlite3_exec(db, "commit;", 0, 0,&szErrMsg);

这样速度提高了近千倍。

posted on 2009-06-20 01:59 肥仔 阅读(4193) 评论(0)  编辑 收藏 引用 所属分类: 数据库


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理