sqlite-utils 4.1.1
摘要
sqlite-utils 4.1.1 修复了在转换带有外键的表时的一个 TransactionError 边界情况,并改进了 CLI 和 Python API 之间的文档交叉引用。
暂无内容
查看缓存全文
缓存时间: 2026/07/13 07:54
# 发布:sqlite-utils 4.1.1
来源:https://simonwillison.net/2026/Jul/12/sqlite-utils/
主要是修复了一个边缘情况,该情况由常规的 Claude 对话在试验 4.1 版本(https://claude.ai/share/564b187d-d126-47ea-9b59-07c16ade0b70)并回答关于 `ON DELETE` 的问题时发现。
> - `table.transform()` 现在如果在一个已打开事务中被调用,且启用了 `PRAGMA foreign_keys`,同时该表被带有破坏性 `ON DELETE` 操作(`CASCADE`、`SET NULL` 或 `SET DEFAULT`)的外键引用,则会引发 `TransactionError`。该 PRAGMA 无法在事务内更改,因此之前作为 transform 的一部分删除旧表时,可能触发这些操作,从而静默删除或修改引用行。详情及解决方案请参见外键与事务(https://sqlite-utils.datasette.io/en/stable/python-api.html#python-api-transform-foreign-keys-transactions)。(#794 (https://github.com/simonw/sqlite-utils/issues/794))
> - CLI(https://sqlite-utils.datasette.io/en/stable/cli.html)和 Python API(https://sqlite-utils.datasette.io/en/stable/python-api.html)文档现在互相交叉引用:CLI 章节链接到对应的 Python API 功能,Python API 章节链接回相应的 CLI 命令。(#791 (https://github.com/simonw/sqlite-utils/issues/791))
相似文章
sqlite-utils 4.1
sqlite-utils 4.1 引入了小型功能,包括用于 Python 代码块的 --code、用于列类型覆盖的 --type 以及严格模式支持,继续作为 SQLite CLI 工具发展。
sqlite-utils 4.0
sqlite-utils 4.0 已发布,这是一个用于操作 SQLite 数据库的 Python 库。
sqlite-utils 4.0,现已支持数据库模式迁移
sqlite-utils 4.0 引入了数据库模式迁移、嵌套事务和复合外键,使得以编程方式管理 SQLite 数据库模式变更更加容易。
sqlite-utils 4.0rc1
sqlite-utils 4.0rc1 是 Python CLI 工具的一个发布候选版本,该工具简化了 SQLite 数据库操作。
sqlite-utils 4.0rc1 新增迁移和嵌套事务
sqlite-utils 4.0rc1 是一个候选发布版本,新增了内置数据库迁移(从 sqlite-migrate 移植而来)以及通过 db.atomic() 实现的嵌套事务,同时包含少量不向后兼容的更改。