乐趣区

关于sqlite:SQLite-3380-现已正式发布

本月 22 日,SQLite 3.38.0 正式公布。

SQLite 是一个小型、疾速、自蕴含、高可靠性、全功能的嵌入式 SQL 数据库引擎,是世界上使用量最大的数据库引擎。

次要更新内容

  • 增加了 -> 和 ->\> 运算符以便于解决 JSON。新的运算符与 MySQL 和 PostgreSQL 兼容。
  • JSON 函数当初是内置的。不再须要应用 -DSQLITE\_ENABLE\_JSON1 编译时选项来启用 JSON 反对。默认状况下启用 JSON。应用新的 -DSQLITE\_OMIT\_JSON 编译时选项禁用 JSON 接口。
  • 日期和工夫性能的加强:

    • 增加了 unixepoch() 函数。
    • 增加了 auto 修饰符和 julianday 修饰符。
  • 将 printf() SQL 函数重命名为 format() 以取得更好的兼容性。保留原始 printf() 名称作为别名以实现向后兼容性。
  • 增加了 sqlite3\_error\_offset() 接口,该接口有时能够帮忙将 SQL error 本地化为输出 SQL 文本中的特定字符,以便应用程序能够提供更好的谬误音讯。
  • 加强了 virtual tables 的接口如下:

    • 增加了 sqlite3\_vtab\_distinct() 接口。
    • 增加了 sqlite3\_vtab\_rhs_value() 接口。
    • 增加了新的 operator 类型 SQLITE\_INDEX\_CONSTRAINT_LIMIT 和 SQLITE\_INDEX\_CONSTRAINT_OFFSET。
    • 增加了 sqlite3\_vtab\_in() 接口(及相干接口)以使虚构表可能一次解决所有 IN operator 束缚,而不是独自解决 IN operator 右侧的每个值。
  • CLI 加强性能:

    • Columnar output modes 失去加强,能够正确处理嵌入在文本中的制表符和换行符。
    • 向 Columnar output modes 增加了“–wrap N”、“–wordwrap on”和“–quote”等选项。
    • 增加了.mode qbox 别名。
    • .import 命令主动打消列名的歧义。
    • 应用新的 sqlite3\_error\_offset() 接口提供更好的谬误音讯。
  • Query planner 加强性能:​

    • 应用 Bloom filter 来减速大型剖析查问。
    • 应用 balanced merge tree 来评估具备 ORDER BY 子句的 UNION 或 UNION ALL 复合 SELECT 语句。
  • 扭转了 ALTER TABLE 语句,当 PRAGMA writable_schema=ON 时,静默疏忽 sqlite_schema table 中没有解析的条目。
退出移动版