SQLAlchemy 2.0.0 首个 Beta 版本已发布。SQLAlchemy 是一个 Python 的 SQL 工具包以及数据库对象映射 (ORM) 框架。它包含整套企业级持久化模式,专门用于高效和高性能的数据库访问。
发布公告写道,2.0 旨在适应现代化 Python 的实际使用,开发团队花费了三年多的时间来升级 SQLAlchemy 用例模型和架构。他们表示,自 2006 年 SQLAlchemy 发布第一个版本以来出现了三个主要的 Python 范式:Python 3、pep-484 类型支持和 asyncio。此次 SQLAlchemy 的 2.0 更新正是为了适应 Python 社区的不断变化。而且与 16 年前相比,Python 社区的规模变得更大,拥有更多新的开发者,他们对严格性、易用性,以及在文档方面有更高的标准。
SQLAlchemy 1.4 系列就已对内部架构进行了变更,包括在 ORM 中集成核心 SQL 结构、完整的 SQL 缓存支持和异步支持,SQLAlchemy 2.0 系列则在许多方面利用了这种架构,主要包括:
- 完整的 pep-484 类型支持,以及与 mypy、pylance 等类型工具的原生兼容性,包括基于注释的声明模型和完全类型化的 SQL 语句(确保卸载所有 sqlalchemy-stubs、 sqlalchemy2-stubs 包)
- 在 ORM 中提供性能更高的 INSERT
- 提供性能更高的表反射架构
- 集成 SELECT、INSERT、UPDATE、DELETE 语句,包括对象的返回、常规 ORM 使用中的 upsert
SQLAlchemy 2.0 还完成了 1.4 中首次引入的大量 API 变更。尽管 SQLAlchemy 1.4 提供了一个非常全面的升级路径,但预计在本系列的初始版本会有很多问题,尤其是声明式的注释支持。开发团队计划在 Beta 阶段完成大量测试,预计几个月后发布 2.0 正式版。
详情查看新功能介绍。
更新日志 | 下载地址