SQLite是否优化了主键索引表?

时间:2018-02-04 08:09:29

标签: sqlite

在链接http://sqlite.1065341.n5.nabble.com/create-index-before-or-after-many-inserts-td31426.html,它表示在插入所有行之后创建索引表比在插入行之前创建索引表更有效。

我假设SQLite总是为主键创建索引表。 SQlite是否在插入数据时延迟创建表?

如果SQLite在开头有表,并在数据插入期间增长表,是否在插入所有数据后优化表数据布局?

1 个答案:

答案 0 :(得分:1)

如果您的主键是autoincrementing的单个列,或者当您使用clustered index时,则没有单独的索引。否则就有了。

完成后没有自动优化步骤,因为数据库无法知道您是否已完成(您可以始终执行另一个INSERT)。您可以尝试运行VACUUM,但在批量插入(没有任何其他更改)之后,差异(如果有的话)可能太小而无法被注意到。