SQLite 3.25 新特性

SQLite 于 2018 年 9 月 15 日发布了 SQLite 3.25.0 版本。

该版本新增了以下功能:

  1. 支持窗口函数(Window Function);
  2. 增强了 ALTER TABLE 命令的功能:
    a. 支持重命名表中的列名:ALTER TABLE table RENAME COLUMN oldname TO newname
    b. 修复了重命名表的功能,同步更新引用了被修改表的触发器视图定义。
  3. 改进查询优化器:
    a. 避免加载聚合查询中不在聚合函数内,也不属于 GROUP BY 子句的那些列。
    b. “IN 运算符提前退出”优化:当查询基于一个多列索引进行查找时,并且使用了运算符 IN 判断非前导列是否位于值列表中;如果没有数据行匹配第一个 IN 列表值,在进行下一个 IN 列表值判断之前,先确认是否存在数据行匹配 IN 列表中的其他值。如果不存在,直接退出运算符 IN 的处理。
    c. 使用传递性尝试在 WHERE 子句中生成常量值。例如,将“a=99 AND b=a”转换为“a=99 AND b=99”。
  4. 为 unix VFS 中的每个 inode 创建一个单独的互斥锁,而不是之前的多个 inode 共享一个互斥锁,在多线程环境中能够提供略微更好的并发;
  5. 增强了 PRAGMA integrity_check 命令,改进了文件页面的空闲列表的问题检测;
  6. 命令行程序的“.dump”命令输出的 infinity 值显示为 1e999;
  7. 增加了文件控制操作码 SQLITE_FCNTL_DATA_VERSION
  8. 增加了 Geopoly 模块

原文地址:SQLite Release 3.25.0 On 2018-09-15

猜你喜欢

转载自blog.csdn.net/horses/article/details/83307838