SQLite 3.35.0 发布,最常用的数据库引擎

栏目: 软件资讯 · 发布时间: 3年前

内容简介:SQLite 是遵守 ACID 的关系数据库管理系统,它包含在一个相对小的 C 程序库中。与许多其它数据库管理系统不同,SQLite 不是一个客户端/服务器结构的数据库引擎,而是被集成在用户程序中。 SQLite 实现了大多数 SQ...

SQLite 是遵守 ACID关系数据库管理系统,它包含在一个相对小的 C 程序库中。与许多其它数据库管理系统不同,SQLite 不是一个客户端/服务器结构的数据库引擎,而是被集成在用户程序中。

SQLite 实现了大多数 SQL 标准。它使用动态的、弱类型SQL 语法。它作为嵌入式数据库,是应用程序,在本地/客户端存储数据的常见选择。

SQLite 3.35.0 正式发布,本次更新内容如下:

  • 添加了内置的 SQL math functions()(需要使用 DSQLITE_ENABLE_MATH_FUNCTIONS 编译时选项。)
  • 添加了对 ALTER TABLE DROP COLUMN 的支持
  • 通用 UPSERT
    • 允许按顺序评估多个 ON CONFLICT 子句
    • 最后的 ON CONFLICT 子句可以省略冲突目标,但仍然使用 DO UPDATE
  • 在 DELETE,INSERT 和 UPDATE 语句上添加对 RETURNING 子句的支持
  • 在包含非常大的 TEXT 或 BLOB 值的数据库上运行 VACUUM 时,使用较少的内存。不再需要一次将整个 TEXT 或 BLOB 都保存在内存中
  • 指定公用表表达式时,增加对 MATERIALIZED 和 NOT MATERIALIZED 提示的支持。默认行为以前是 NOT MATERIALIZED,但现在已被多次使用的 CTE 更改为 MATERIALIZED
  • 该 SQLITE_DBCONFIG_ENABLE_TRIGGER 和 SQLITE_DBCONFIG_ENABLE_VIEW 设置被修改,使它们只控制在主数据库模式或在连接数据库模式的触发和视图,而不是在 TEMP 模式。
  • 查询计划器/优化器改进
    • 增强了最小/最大优化,使其能更好地与 IN 操作符和上一版本的 OP_SeekScan 优化配合使用
    • 尝试将 WHERE 子句中的 EXISTS 操作符当作 IN 操作符来处理,在这种情况下,这是一种有效的转换,有可能提高性能
    • 允许 UNION ALL 子查询被扁平化,即使父查询是 join
    • 在 WHERE 子句中的 IS NOT NULL 表达式上使用索引(如果合适的话),即使 STAT4 被禁用
    • 如果 x 是具有 NOT NULL 约束的列,并且不涉及外部连接,那么 x IS NULLx IS NOT NULL 形式的表达式可能会被转换为简单的 FALSE 或 TRUE
    • 如果 UPDATE 不修改任何与外键相关联的列,则避免在 UPDATE 语句上检查外键约束
    • 允许将 WHERE 项推倒放入包含窗口函数的子查询中,只要 WHERE 项完全由子查询中所有窗口函数的 PARTITION BY 子句中找到的常量和表达式的副本组成
  • CLI 增强功能
    • 增强 .stats 命令,接受新的参数 stmtvmstep,从而分别显示准备语句统计信息和仅显示虚拟机步骤计数
    • 增加 .filectrl data_version 命令
    • 增强 .once.output 命令,如果目标参数以 | 开头(表示输出重定向到管道中),那么参数不需要加引号
  • 错误修正
    • 修正当处理一个语法不正确的 SELECT 语句时,一个潜在的 NULL 指针析出,该语句有一个相关的 WHERE 子句和一个 HAVING 0 子句
    • 修复了 3.33.0 版本的一个 in-operator 优化中的 bug,这个 bug 可能会导致错误的答案
    • 修正 LIKE 运算符中,如果模式以 % 结尾,且有 ESCAPE '_'子句时,会导致错误的答案

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


以上所述就是小编给大家介绍的《SQLite 3.35.0 发布,最常用的数据库引擎》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C专家编程

C专家编程

Peter Van Der Linden / 徐波 / 人民邮电出版社 / 2008-2 / 45.00元

《C专家编程》展示了最优秀的C程序员所使用的编码技巧,并专门开辟了一章对C++的基础知识进行了介绍。 书中C的历史、语言特性、声明、数组、指针、链接、运行时、内存以及如何进一步学习C++等问题进行了细致的讲解和深入的分析。全书撷取几十个实例进行讲解,对C程序员具有非常高的实用价值。 本书可以帮助有一定经验的C程序员成为C编程方面的专家,对于具备相当的C语言基础的程序员,本书可以帮助他们......一起来看看 《C专家编程》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具