加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

为什么清除SQLite数据库不会减小其大小?

发布时间:2020-12-12 19:10:33 所属栏目:百科 来源:网络整理
导读:我有一个SQLite数据库. 我创建了表并填充了大量的数据. 然后我通过删除和重新创建表来清除数据库.我确认所有的数据已被删除,表是空的,通过使用SQLite管理员查看它们. 问题是数据库文件(* .db3)的大小在清除之后保持不变. 这当然是不可取的,因为我想重新获得
我有一个SQLite数据库.

我创建了表并填充了大量的数据.

然后我通过删除和重新创建表来清除数据库.我确认所有的数据已被删除,表是空的,通过使用SQLite管理员查看它们.

问题是数据库文件(* .db3)的大小在清除之后保持不变.

这当然是不可取的,因为我想重新获得一旦我清楚了这些数据所占用的空间.

有没有人做过类似的观察和/或知道发生了什么?

可以做些什么呢?

从 here:

当一个对象(表,索引,触发器或视图)从数据库中删除时,它留下空的空间.下一次将新信息添加到数据库时,这个空的空间将被重用.但在此期间,数据库文件可能大于严格要求.此外,频繁插入,更新和删除可能导致数据库中的信息变得碎片化 – 将数据库文件全部删除,而不是集中在一起.

VACUUM命令通过将其内容复制到临时数据库文件并从副本重新加载原始数据库文件来清理主数据库.这消除了空闲页面,使表数据对齐,并以其他方式清理数据库文件结构.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读