SQLite 3.33.0 发布,世界上使用量最大的数据库引擎-冯金伟博客园

  SQLite 3.33.0 发布了,SQLite 是一个 C 实现的 SQL 数据库引擎,它的特点是小型、快速、自包含、高可靠性和功能齐全。SQLite 嵌入在所有手机和大多数计算机中,也捆绑在为数众多的其它应用中,是世界上使用量最大的数据库引擎。

  此版本更新内容包括:

  1. 支持遵循 PostgreSQL 语法的 UPDATE FROM:
  2. UPDATE-FROM 的想法是对 SQL 的扩展,它允许 UPDATE 语句由数据库中的其他表驱动。使用 UPDATE-FROM,可以将目标表与数据库中的其他表连接起来,以帮助计算需要更新的行以及这些行上的新值。
  3. 将数据库文件的最大大小增加到 281 TB。
  4. 扩展了 PRAGMA integrity_check 语句,以便可以选择将其限制为仅验证单个表及其索引,而不是验证整个数据库文件。
  5. 添加了用于执行任意精度十进制算术的十进制扩展名。
  6. 增强 ieee754 扩展,以使用 IEEE 754 binary64 数字。
  7. CLI 增强功能:
    1. 添加了四个新的输出模式:“box”、“json”、“markdown” 和 “table”。
    2. “column”输出模式会自动扩展列以包含最长的输出行,如果之前未设置,则自动打开“.header”。
    3. “quote”输出模式支持“.separator”。
    4. CLI 内置了十进制扩展名和 ieee754 扩展名。
  8. 改进 Query planner:
    1. 添加了使用 INDEXED BY 查找查询的全索引扫描(full-index-scan)查询计划的功能,该计划以前会因“无查询解决方案”而失败。
    2. 尽管存在错误信息,但可以更好地检测丢失,不完整和/或不可靠的 sql​​ite_stat1 数据,并生成良好的查询计划。
    3. 提高了查询性能,例如“SELECT min (x) FROM t WHERE y IN (?,?,?)”(假设在 t (x,y) 上具有索引)。
  9. 在 WAL 模式下,如果写入器崩溃并使 shm 文件处于不一致状态,则即使存在活动的读取事务,后续事务现在也可以恢复 shm 文件。在此版本之前,该情况下的 shm 文件恢复将导致 SQLITE_PROTOCOL 错误。

  更新说明:https://sqlite.org/releaselog/3_33_0.html