3

我有一项服务可以在应用程序的 SQLite DB 中创建记录、处理数据并从 SQLite DB 中删除记录。

我发现 SQLite 数据库随着时间的推移(可能是一周)而增长,尽管其中的记录数量保持相当稳定。

问题 在不增加数据库的情况下添加和删除记录的最佳做法是什么?

要插入我使用的记录: result = mDB.insert(table, null, kvpairs);

要删除我使用的记录: result = mDB.delete(table, where, null);

参考

Android SQLiteDatabase 插入

Android SQLiteDatabase 删除

4

1 回答 1

4

数据库中的空闲页面将被重用,因此增长不会无限。

您可以尝试就地更新记录,但如果您无法将旧记录映射到新记录或某些值更改了它们的大小,这将无济于事。

尝试定期运行VACUUM和/或启用PRAGMA auto_vacuum

于 2012-09-14T16:42:51.133 回答