当前位置:  开发笔记 > 数据库 > 正文

sqlite表中的最大行数

如何解决《sqlite表中的最大行数》经验,为你挑选了4个好方法。

给一个简单的sqlite3 table(create table data (key PRIMARY KEY,value)),密钥大小为256字节,值大小为4096字节,这个sqlite3表中最大行数的限制(忽略磁盘空间限制)是多少?他们的限制是否与操作系统相关(win32,linux或Mac)



1> aculich..:

截至2017年1月,sqlite3限制页面根据数据库的最大大小(140 TB)定义了此问题的实际限制:

表中的最大行数

表中的理论最大行数是2 ^ 64(18446744073709551616或大约1.8e + 19).此限制无法访问,因为将首先达到最大数据库大小为140太字节.一个140 TB的数据库可以容纳不超过大约1e + 13行,然后只有没有索引且每行包含非常少的数据.

因此,如果最大数据库大小为140太字节,那么你很幸运能得到大约1万亿行,因为如果你真的有一个有用的数据表,那么行的数量会受到数据大小的限制.在140 TB的数据库中,最多可能有数十亿行.


刚刚阅读文档...... 1.4e + 14字节(140TB),但实际大小限制是底层操作系统的文件大小限制,它要低得多.

2> 小智..:

我有大小3.3 GB的SQLite数据库,有2500万行存储的数字日志并对它们进行计算,它运行得很快.



3> Nick Dandoul..:

在SQLite3中,字段大小不固定.引擎将为每个单元格提供所需的空间.

对于文件限制,请参阅此SO问题:
具有非常大的数据库文件的sqlite的性能特征是什么?



4> Fidel..:

我有一个7.5GB的SQLite数据库,存储了1050万行.只要您有正确的索引,查询就很快.要使插入快速运行,您应该使用事务.此外,我发现在插入所有行最好创建索引.否则插入速度很慢.

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有