在 Room 数据库中保存数据的存储限制是多少?

4

我有一个使用Room数据库的应用程序。如何知道已达到数据存储的最大限制?如果应用程序超过了该限制,会发生什么?它会影响已经存储的数据还是只会停止添加新数据?

1个回答

6

来自文档:

Room持久化库提供了一个在SQLite上的抽象层。

因此我认为Room与SQLite有相同的限制。

来自SQLite中的限制:

最大数据库大小

每个数据库由一个或多个“页面”组成。在单个数据库中,每个页面的大小相同,但不同的数据库可以拥有512到65536之间是2的幂次方页大小。数据库文件的最大大小为4294967294页。以最大的页面大小65536字节计算,这意味着最大数据库大小约为1.4e+14字节(281 TB,256 tebibyte,281474 GB或256,000 gibibyte)。

我怀疑你不会触及这个限制,相反我认为你可能会填满设备上所有可用的内存。

如何知道数据存储的最大限制已经达到?

查看这个答案,非常详细。

如果应用超过了这个限制会发生什么?

我真的认为这取决于你所做的操作,但为了避免崩溃,你可以像链接答案中那样事先检查内存。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接