Small. Fast. Reliable.
Choose any three.

SQLite版本3.15.2于2016-11-28

版本3.15.0(2016-10-14)中的更改:

  1. 增加了对行值的支持。
  2. 部分索引的WHERE子句中允许确定性SQL函数
  3. 在Unix VFS上添加了“ modeof = filename ” URI参数
  4. 添加了对SQLITE_DBCONFIG_MAINDBNAME的支持。
  5. 添加了对ATTACH版本的数据库进行VACUUM功能
  6. 命令行外壳的增强功能:
    1. 添加“ .testcase”和“ .check”点命令
    2. 在“ .open”点命令中添加了--new选项,从而可以在打开数据库之前清除数据库中的所有先前内容。
  7. 增强fts5vocab虚拟表以有效处理“ ORDER BY term”。
  8. 各种其他的微优化措施将普通工作负载的CPU使用率降低了7%以上。此版本中的大多数优化都在前端(sqlite3_prepare_v2())上进行。

    Bug修复:

  9. 现在,乘法运算符可以正确检测到64位整数溢出,并在所有转折情况下都提升为浮点数。修复票 1ec41379c9c1e400
  10. 当在IN运算符的LHS上使用具有冗余唯一索引的列时,请正确处理这些列。修复故障0eab1ac759
  11. 在表达式的索引中跳过范围查询中的NULL条目。修复票 4baa46491212947
  12. 确保通过在“ INSERT ... SELECT”语句上执行“ Xfer Optimization”来初始化sqlite_sequence表中的AUTOINCREMENT计数器。修复票 7b3328086a5c116c
  13. 确保ORDER BY LIMIT优化(来自检入559733b09e)可与INTEGER PRIMARY KEY上的IN运算符一起使用。修复票务 96C1454C

版本3.15.1(2016-11-04)中的其他更改:

  1. 添加了SQLITE_FCNTL_WIN32_GET_HANDLE文件控件操作码。
  2. 修复VACUUM命令,以便将多余的内容溢出到磁盘上,而不是将所有内容都保存在内存中,并可能导致较大的数据库文件出现内存不足错误。这解决了3.15.0版引入的问题。
  3. 修复一种情况(自3.8.0-2013-08-26开始),在这种情况下,LEFT JOIN的ON子句中的OR连接术语可能导致错误的结果。机票 34a579141b2c5ac
  4. 修复了在LEFT JOIN的ON子句中使用行值可能导致错误结果的情况。门票 fef4bb4bd9185ec8f

版本3.15.2(2016-11-28)中的其他更改:

  1. 对3.15.0版中引入的行值逻辑的多个错误修复。
  2. 在恶意构造的语法错误之后,修复ATTACH / DETACH中的NULL指针取消引用。门票 2f1b168ab4d4844
  3. 修复了内置instr()函数中由于内存不足而导致的崩溃。
  4. JSON扩展名中,修复JSON验证程序,以使其正确拒绝字符串中的无效反斜杠转义符。

    散列:

  5. SQLITE_SOURCE_ID:“ 2016-11-28 19:13:37 bbd85d235f7037c6a033a9690534391ffeacecc8”
  6. sqlite3.c的SHA1:06d77b42a3e70609f8d4bbb97caf53652f1082cb

一个SQLite的版本的完整列表, 在一个单一的页面和年代都还可以。 SQLite版本控制站点上提供了每个签入的详细历史记录 。