SQLite 3.44.0 发布


SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。

SQLite 3.44.0 现已发布,更新内容如下:

  • 聚合函数现在可以在其最后一个参数后包含 ORDER BY 子句。函数的参数按照指定的顺序进行处理。这对于 string_agg() 和 json_group_array() 等函数非常重要 。
  • 添加对 concat() 和 concat_ws() 标量 SQL 函数的支持,与 PostgreSQL、SQLServer 和 MySQL 兼容。
  • 添加对 string_agg() 聚合 SQL 函数的支持,兼容 PostgreSQL 和 SQLServer。
  • strftime() SQL 函数上的新转换字母:%e %F %I %k %l %p %P %R %T %u
  • 添加新的 C 语言 API: sqlite3_get_clientdata() 和 sqlite3_set_clientdata()。
  • 现在,当运行 CREATE TABLE 语句本身时,会引发许多与 CREATE TABLE 相关的错误,而不是推迟到第一次实际使用表时。
  • PRAGMA integrity_check 命令现在使用新的 xIntegrity 方法验证各种内置虚拟表中内容的一致性。这适用于 FTS3、FTS4、FTS5、RTREE 和 GEOPOLY 扩展。
  • SQLITE_DBCONFIG_DEFENSIVE 设置现在可防止打开 PRAGMA writable_schema 。以前可以打开 writable_schema,但实际上不允许模式可写。现在则根本无法开启。
  • 将内置 FTS3、FTS4、FTS5、RTREE 和 GEOPOLY 虚拟表标记为 SQLITE_VTAB_INNOCUOUS,以便它们可以在高安全性部署中的触发器内部使用。
  • PRAGMA case_sensitive_like 语句已弃用,因为当模式包含 LIKE 运算符时使用它可能会导致 PRAGMAintegrity_check 报告数据库损坏。
  • 现在,只要使用 Microsoft C 编译器构建 SQLite,就会默认启用 SQLITE_USE_SEH (结构化异常处理)。可以使用 -DSQLITE_USE_SEH=0 禁用它
  • Query planner 优化:
    • 在部分索引扫描中,如果 WHERE 子句暗示表列的常量值,则用该常量替换该表列的出现。这增加了部分索引作为覆盖索引的可能性。
    • 禁用视图扫描优化(在版本 3.42.0 中添加- item 1c),因为它会导致多个性能下降。取而代之的是,将 DISTINCT 子查询的估计行数减少 8 倍。
  • SQLite 现在执行运行时检测,检测底层硬件是否支持精度大于“double”的“long double”,并根据检测结果使用适当的浮点例程。
  • Windows CLI 现在默认在支持 UTF-8 的平台上使用 UTF-8 进行输入和输出。--no-utf8 选项可用于禁用 UTF8 支持。

更多详情可查看:https://sqlite.org/changes.html


相關推薦

2023-02-24

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.41.0 现已正

2022-11-19

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.40 正式发布,

2022-07-16

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.39.1 正式发布,

2023-05-18

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.42.0 正式发布,

2024-01-24

SQLite 3.45 已发布。 SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。

2023-03-24

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.41.2 正式发布,

2022-10-02

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.39.4 已正式发布

2022-09-07

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.39.3 已正式发布

2022-06-27

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.39.0 正式发布,

2023-10-13

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.43.2 现已发布,

2022-07-23

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.39.2 正式发布,

2024-04-19

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.45.3 现已发布,

2022-11-01

SQLite 官方的 WASM 项目终于来了!这表示 WebAssembly 在 SQLite 社区完全进入工业级应用阶段! 1. WASM 是什么 WebAssembly,又名 WASM,是一种标准,它定义了一种低级编程语言,适合作为与许多其他语言交叉编译的目标,以及通过浏

2024-03-15

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。 SQLite 3.45.2 现已发布,