Small. Fast. Reliable.
Choose any three.

SQLite版本3.8.6(2014-08-15)

  1. 在SQL解析器中添加了对十六进制整数文字的支持。(例如:0x123abc)
  2. 增强了PRAGMA integrity_check命令,以检测UNIQUENOT NULL约束违例。
  3. SQLITE_MAX_ATTACHED的最大值从62增加到125。
  4. 在发出SQLITE_PROTOCOL 错误之前,请将WAL模式下的超时从1秒增加到10秒。
  5. 添加了可能的(X) SQL函数。
  6. unicode61标记生成器现在包含在FTS4默认。
  7. 运行ANALYZE时,对所有准备好的语句触发自动重新准备。
  8. 在源代码树中添加了一个新的 可加载扩展源代码文件: fileio.c
  9. 将扩展功能readfile(X)和writefile(X,Y) (使用上一项目符号fileio.c中复制/粘贴的代码)添加到 命令行shell
  10. 命令行shell中添加了.fullschema点命令。

    性能增强:

  11. IN运算符右侧的子查询上停用DISTINCT关键字。
  12. 添加了将IN运算符评估为比较序列的功能,以替代使用表查找的功能。在比较快的情况下(例如,IN运算符的右侧较小和/或频繁更改时),请使用比较序列实现。
  13. 查询计划程序现在使用sqlite_stat4信息(由ANALYZE创建)来帮助确定跳过扫描优化是否合适。
  14. 确保查询计划者从不尝试使用自制的瞬态索引来代替架构定义的索引。
  15. 其他一些小的调整,以提高VDBE代码的质量。

    Bug修复:

  16. 修复了CREATE UNIQUE INDEX中的一个错误,该错误在 3.8.2版中添加了WITHOUT ROWID支持时引入,该错误允许为非唯一的NOT NULL列赋予UNIQUE索引。门票9a6daf340df99ba93c
  17. 修复了先前版本中引入的R-Tree扩展中的错误,该错误可能导致使用IN运算符左侧的R-Tree的rowid的查询的结果不正确。票证d2889096e7bdeac6
  18. 修复sqlite3_stmt_busy()接口,以便为已步进但从未重置的ROLLBACK语句提供正确答案。
  19. 修复了以下问题:如果包含DEFAULT的列(是聚合函数)尝试使用其DEFAULT,则会导致空指针被取消引用。机票3a88d85f36704eebe1
  20. 现在,命令行外壳程序的CSV输出始终将CRNL用作行分隔符,并避免在数据中包含的NL前面插入CR。
  21. 使用IN运算符修复列亲和力问题。票9a8b09f8e6
  22. 修复ANALYZE命令,以便为sqlite_stat4表中的WITHOUT ROWID表添加正确的样本 。票证b2fa5424e6fcb15
  23. SQLITE_SOURCE_ID:“ 2014-08-15 11:46:33 9491ba7d738528f168657adb43a198238abde19e”
  24. sqlite3.c的SHA1:72c64f05cd9babb9c0f9b3c82536d83be7804b1c

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