读书人

sqlite3如何高效的清空所有数据呢

发布时间: 2012-09-01 09:33:02 作者: rapoo

sqlite3怎么高效的清空所有数据呢?
我的工作环境是:windows、c++、vc2010,sqlite3数据库。
我把sqlite3源码都整合到了自己的工程中。

在清空一个数据库文件时,我现在做的方式如下(粗略):
sqlite3_exec( pDb, "BEGIN TRANSACTION;", NULL, NULL, NULL );
sqlite3_exec( pDb, "delete from Db;", NULL, NULL, NULL );
sqlite3_exec( pDb, "COMMIT TRANSACTION;", NULL, NULL, NULL );

这种方式,对于小数据库文件来说,很快,但是对于300M左右的数据库文件,速度会很慢,要删除个5-6分钟。
大家有什么好的方式或者建议吗?
多谢大家了。


[解决办法]
最好准备个空DB(包含所有表结构),直接COPY

读书人网 >其他数据库

热点推荐