SQLite 3.37 发布

SQLite 3.37 版本已经发布,这是一个设计为插件库的轻量级 DBMS。 SQLite 代码分布在公共领域,即可以不受限制地免费用于任何目的。 SQLite 开发人员的财务支持由专门创建的联盟提供,该联盟包括 Adob​​e、Oracle、Mozilla、Bentley 和 Bloomberg 等公司。

主要变化:

  • 添加了对创建具有“STRICT”属性的表的支持,该属性在声明列时需要强制类型指示,并对添加到列的数据应用严格的类型匹配检查。 设置此标志后,如果无法将指定数据转换为列类型,SQLite 将显示错误。 例如,如果列创建为“INTEGER”,则传递字符串值“123”将导致添加数字 123,但尝试指定“xyz”将失败。
  • 在“ALTER TABLE ADD COLUMN”操作中,在添加列时添加了对行是否存在的条件的检查,该检查基于“CHECK”表达式或“NOT NULL”条件。
  • 实现了表达式“PRAGMA table_list”来显示有关表和视图的信息。
  • 命令行界面实现了“.connection”命令,它允许您同时支持多个数据库连接。
  • 添加了“—safe”参数,该参数禁用 CLI 命令和 SQL 表达式,这些命令和 SQL 表达式允许您对与命令行上指定的数据库不同的数据库文件执行操作。
  • CLI 优化了读取拆分为多行的 SQL 表达式的性能。
  • 添加了函数 sqlite3_autovacuum_pages()、sqlite3_changes64() 和 sqlite3_total_changes64()。
  • 查询规划器确保忽略子查询和视图中的 ORDER BY 子句,除非删除这些子句不会更改查询的语义。
  • 扩展generate_series(START,END,STEP)已更改,其中第一个参数(“START”)已被强制执行。 要返回旧的行为,可以使用“-DZERO_ARGUMENT_GENERATE_SERIES”选项进行重建。
  • 减少存储数据库模式的内存消耗。

来源: opennet.ru

添加评论