您现在的位置是:首页 > 文章详情

SQLite 3.50.3 发布

日期:2025-07-21点击:18

SQLite 是一个 C 语言库,实现了一个小型、快速、独立、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最多的数据库引擎。SQLite 的源代码属于公共领域,每个人都可以免费使用,用于任何目的。

SQLite 3.50.3 现已发布,更新内容如下:

  1. 添加 sqlite3_setlk_timeout() 接口,在支持阻塞锁的构建中为阻塞锁设置独立的超时,有别于 sqlite3_busy_timeout()
  2. SQLITE_DBCONFIG_ENABLE_COMMENTS 约束(在上一版本中添加)略有放宽,以便从现有 sqlite_schema 表读取 schema 时始终允许注释。注释仅在新 SQL 中被阻止。
  3. 新的 SQL 函数:
    1. unistr()
    2. unistr_quote()
  4. 对于内置 printf() (涵盖sqlite3_mprintf() API 和format() SQL 函数及类似函数)中的 %Q 和 %q 转换,alternate-form-1 标志(“#”)会导致控制字符转换为适合unistr() 的 backslash-escapes。
  5. CLI 增强功能:
    1. 避免直接输出大多数控制字符
    2. .dump 命令的输出使用新的unistr() SQL 函数对特殊字符进行编码,除非将 --escape 模式设置为关闭。
    3. 更好地格式化 ".schema --indent" 命令输出中的复杂部分索引。
  6. sqlite3_rsync 的增强功能:
    1. 数据库处于 WAL 模式的要求已被删除。
    2. 增强了同步协议,当同步双方一开始非常相似时,可减少网络带宽的使用。
    3. sqlite3_rsync 程序现在可以在 Mac 上运行,无需在远程端指定 sqlite3_rsync 可执行文件的完整路径名,只要将 sqlite3_rsync 可执行文件安装在以下目录之一中即可:$HOME/bin:/usr/local/bin:/opt/homebrew/bin
  7. JSON 函数的变更:
    1. 错误修复:强制执行 JSON5 限制,“\0”转义符后面不能跟数字。
    2. 错误修复:当 json_group_object(LABEL,VALUE) 的 LABEL 参数 为 NULL 时,将省略结果对象的该元素。
    3. 优化:如果jsonb_set()jsonb_replace()函数对大型JSONB对象的内部进行了更改,它们会尽力保持 JSONB 对象的大小不变,并尽可能少地修改对象内部的字节。这有助于减少 I/O,因为它允许 SQLite 只写入包含更改字节的页面,而不是所有周围的页面。
  8. 改进了对 Cygwin、MinGW 和类似系统以及 Termux 的构建支持。
  9. 修复了文档和源代码注释中的拼写错误。
  10. 其他性能改进。
  11. JavaScript/WASM:
    1. 修复 OPFS SAHPool VFS 中一个长期存在的文件名摘要计算错误。3.50.0+ 版本在该 VFS 中创建的数据库无法被旧版本的 VFS 读取,但 3.50.0 版本可以向后兼容旧版本创建的现有数据库。

详情可查看:https://sqlite.org/releaselog/3_50_3.html

原文链接:https://www.oschina.net/news/361470/sqlite-3-50-3-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章