【问题标题】:Does SQLite optimize the primary key indexing table?SQLite 是否优化主键索引表?
【发布时间】:2018-07-14 08:01:03
【问题描述】:

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

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

如果SQLite开头有表,在数据插入过程中增加表,是否会在插入所有数据后优化表数据布局?

【问题讨论】:

  • 我会假设如果 SQLite 表中有一个默认索引,那么这个索引就会在创建表时存在。

标签: sqlite


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2021-01-08
    • 1970-01-01
    • 1970-01-01
    • 2011-03-04
    • 1970-01-01
    • 2011-01-11
    • 2015-11-03
    • 2010-10-31
    相关资源
    最近更新 更多