Small. Fast. Reliable.
Choose any three.

SQLite版本3.26.0于2018-12-01

  1. 优化:对具有表达式索引的表进行UPDATE时,如果表达式索引未引用要更新的表的任何列,则不要更新表达式索引。
  2. 允许虚拟表实现的xBestIndex()方法返回 SQLITE_CONSTRAINT,以指示建议的查询计划不可用,不应作进一步考虑。
  3. 添加了SQLITE_DBCONFIG_DEFENSIVE选项,该选项禁用了使用普通SQL创建损坏的数据库文件的功能。
  4. 启用SQLITE_DBCONFIG_DEFENSIVE选项时,添加了对只读影子表的支持。
  5. 添加了PRAGMA legacy_alter_table命令,如果启用该命令,则该 ALTER TABLE命令的行为类似于旧版本的SQLite(3.25.0之前的版本),以实现兼容性。
  6. 添加了PRAGMA table_xinfo,其功能与PRAGMA table_info 相同,除了它还在虚拟表中显示隐藏的列
  7. 添加了说明虚拟表 作为运行时可加载扩展。
  8. 向查询计划器添加一个限制计数器,以防止某些病理SQL输入出现过多的 sqlite3_prepare()时间。
  9. 使用SQLITE_ENABLE_NORMALIZE进行编译时,增加了对sqlite3_normalized_sql()接口的支持。
  10. 增强的触发器,以便他们可以使用除定义触发器的模式之外的其他模式中存在的表值函数
  11. CLI的增强功能:
    1. 改进了“ .help”命令。
    2. SQLITE_HISTORY环境变量(如果存在)指定命令行编辑历史记录文件的名称
    3. 与打开新数据库关联的--deserialize选项导致将数据库文件读入内存并使用sqlite3_deserialize() API进行访问 。这简化了在数据库上运行测试,而无需修改磁盘上的文件。
  12. 地理扩展的增强功能:
    1. 始终使用二进制格式存储多边形,这样速度更快且占用空间更少。
    2. 添加了geopoly_regular()函数。
    3. 添加了geopoly_ccw()函数。
  13. 会话扩展的增强功能:
    1. 添加了SQLITE_CHANGESETAPPLY_INVERT标志
    2. 添加了sqlite3changeset_start_v2()接口和 SQLITE_CHANGESETSTART_INVERT标志。
    3. 添加了 changesetfuzz.c 测试用例生成器实用程序。

    散列:

  14. SQLITE_SOURCE_ID:“ 2018-12-01 12:34:55 bf8c1b2b7a5960c282e543b9c293686dccff272512d08865f4600fb58238b4f9”
  15. sqlite3.c的SHA3-256:72c08830da9b5d1cb397c612c0e870d7f5eb41a323b41aa3d8aa5ae9ccedb2c4

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