Swe*_*ain 4 database storage android kotlin android-room
我有一个带有房间数据库的应用程序。我如何知道已达到数据存储的最大限制?如果应用程序超出该限制会发生什么情况。它会影响已存储的数据还是只是停止添加新数据?
来自文档
Room 持久性库提供了 SQLite 之上的抽象层
所以我假设 room 与SQLite具有相同的限制。
最大数据库大小
每个数据库都由一个或多个“页面”组成。在单个数据库中,每个页面的大小相同,但不同数据库的页面大小可以是 512 到 65536(含)之间的 2 的幂。数据库文件的最大大小为 4294967294 页。当最大页面大小为 65536 字节时,这转换为最大数据库大小约为 1.4e+14 字节(281 TB、或 256 TeB、或 281474 GB 或 256,000 GB)。
我怀疑你会达到这个限制,但我相信你可以填满设备上的所有可用内存。
我如何知道已达到数据存储的最大限制?
看看这个答案,很详细
如果应用程序超出该限制会发生什么
我真的认为这取决于您执行的操作,但为了避免崩溃,您可以通过事先检查内存来处理它,如链接的答案中所示。