Car*_*res 5 sql database sqlite
即使在读取SQLite限制之后,我也找不到SQLite数据库文件可以容纳的最大表数.所以,我想知道是否
Lar*_*tig 10
此页面记录了SQLite中的限制列表.每个数据库没有最大数量的表,因此SQLite可能没有限制.每个JOIN限制为64个表.
4.连接中的最大表数
SQLite不支持包含超过64个表的连接.这个限制源于SQLite代码生成器在查询优化器中使用每个连接表一位的位图这一事实.
SQLite使用高效的查询计划器算法,因此即使是大型连接也可以快速准备.因此,没有机制来提高或降低连接中表的数量限制.
15.模式中的最大表数
每个表和索引都需要数据库文件中至少有一个页面.前一句中的"索引"表示使用CREATE INDEX语句显式创建的索引或由UNIQUE和PRIMARY KEY约束创建的隐式索引.由于数据库文件中的最大页数为2147483646(略多于20亿),因此这也是模式中表和索引数的上限.
无论何时打开数据库,都会扫描并解析整个模式,并在内存中保存模式的解析树.这意味着数据库连接启动时间和初始内存使用量与架构的大小成正比.
表格结构相同吗?如果是这样,通常认为将它们存储在具有标识列的单个表中是更好的做法.
我相信表的数量仅受数据库大小的限制。单个 SQLite 数据库中最多可以有 2,147,483,646 个页面。所以我猜测这也是单个 SQLite 数据库中表的最大数量。
这是基于数据库页仅用于表的假设,这可能不是一个非常有用的假设。