繁体   English   中英

如何在 sqlite 中使用 VACUUM INTO?

[英]How to VACUUM INTO in sqlite?

我有一个数据库,其中包含随着时间的推移添加和删除的许多行。 当行被删除时,它变得相当大并且sqlite不会释放空间。

需要运行手动vacuum来压缩数据库。 我一直在尝试运行吸尘器,但无法使命令起作用。 官方文档没有解释太多,也没有给出工作示例。

如何在 sqlite 中使用VACUUM INTO

我理解您的沮丧,上次我必须运行 VACUUM 也花了我一整个下午。 该文档当然可以更好地解释参数。

在 SQLite 3 中:

VACUUM main INTO 'C:\\Users\\username\\PycharmProjects\\project\\dbcompacted.sqlite';

默认架构名称是main 可以使用PRAGMA database_list;列出现有模式PRAGMA database_list; .

根据 sqlite 版本,schema 参数可能是可选的,也可能被忽略。

指定绝对路径(并为 Windows 转义反斜杠字符)。 当前目录可能是任何内容,这取决于数据库的打开方式和查询的执行方式。 对我来说,它一直失败,错误unable to open database: dbcompacted.sqlite省略完整路径时。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM