当前位置:数据库 > SQLite >>

如何建立SQLite数据库并Insert数据?

我用SQLite Spy执行了10000行Insert操作,竟然用了1个半小时!! 为什么会这么慢。我的都是很小的数据,总共不到5M。 请问有没有什么好的办法?
答案:这是因为Sqlite中数据库是以文件的形式存在磁盘中,每次访问时都要打开一次文件,如果对数据库进行大量的操作,速度会很慢。
解决办法:用事务的形式提交。
因为开始事务后,进行的大量操作的语句都保存在内存中,当提交时才全部写入数据库,此时,数据库文件也就只用打开一次。
在进行Insert操作的前后的前后分别添加开启和关闭事务语句:
rc = sqlite3_exec(db, "begin;", 0,0, &szErrMsg);
for (...)

{

//insert into operate

}

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

这样速度提高了近千倍。

上一个:我还想问下,你知道如何删除mysql或者sqlite3数据库中前面10条的数据吗?是在什么都不知道的情况下删除!
下一个:请问 Delphi 2010中怎么使用(安装)Sqlite数据库?

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,