sqlite3如何解决操作数据库,文件一直占用,关闭数据库后,文件仍无法删除,c语言调用。 (c 清空数据库)

在数据删除后,手动执行VACUUM命令,执行方式很简单

sqlite> vacuum;

VACUUM命令会清空“空闲列表”,把数据库尺寸压缩到最小。但是要耗费一些时间。

FQA里面说,在Linux的环境下,大约0.5秒/M。并且要使用两倍于数据库文件的空间。

我憎恨此FQA,他只说系统环境,不说机器硬件环境。我在测试手机上执行用了将近13秒时间压缩了将近3M的空间。至于它所占用的另一部分空间,是生成了一个.db-journal后缀名的临时文件。(这个问题对我现在来说是无所谓的。)


数据运维技术 » sqlite3如何解决操作数据库,文件一直占用,关闭数据库后,文件仍无法删除,c语言调用。 (c 清空数据库)