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