SQLAlchemy 1.4.0 发布,Python ORM 框架
SQLAlchemy 是 Python SQL 工具箱和对象关系映射器,它为应用程序开发人员提供了 SQL 的全部功能和灵活性。它提供了一整套知名的企业级持久性模式,旨在高效、高性能地访问数据库,并被适配为一种简单的 Pythonic 域语言。
在经历了 1.4 系列的三个测试版之后,1.4.0 版本终于正式发布了。它对核心和 ORM 中最突出的 API 进行了重大的重新思考,对内部结构进行了大量的修改,并提供了大量重要的新特性和功能。
SQLAlchemy 1.4 确立了自己作为 SQLAlchemy 2.0 项目的起点,该项目将完全转移到 Python 3 上,并最终确定 1.4.0 版本中引入的新 API。
SQLAlchemy 1.4.0 最主要的亮点包括:
- 用于为 Core 和 ORM 生成 SELECT 和其他 SQL 语句的方法现在统一在一个经过修改且功能更强大的 select() 构造上。因此,针对 Core 或 ORM 上下文的 SQL 查询现在可以使用相同的 API 和模式来组成。Session.execute() 和 Connection.execute() 方法已被调整,因此 Core 和 ORM 查询和结果集之间的转换是无缝的,两个系统的行为与彼此的实际情况相似。新的强调明确性和不含糊的一致性,目的是让学习和使用 SQLAlchemy 更加直接,同时也支持新的 Python 范式,如 asyncio 和 PEP-484 类型;
- 修订后的声明式映射系统为许多新的映射范式提供了支持,包括使用装饰器而不是基类的映射类,对 Python 数据类的明确支持,以及"命令式映射",它是与声明式类注册表集成的经典映射器 mapper() 操作的改进版本;
- 对 Core 和 ORM 的 SQL 编译进行通用和完全透明的缓存。这取代了之前版本的 "baked 查询缓存"系统,该系统为 ORM 提供了一个可选的 SQL 缓存系统,新的方法是完全透明的,并为 Core 和 ORM 中的绝大多数 DML 和 DQL 语句启用。该系统不仅可以缓存语句的即时 SQL 字符串,还可以缓存其相关的结果处理基础架构,该基础架构用于为每个查询生成新的行和 ORM 对象实例;
- 为 Core 以及 ORM 新修订的模型,它更易于使用,消除了已经变得混乱的传统 API,并以比以前更一致的方式运行。新的模型将是 SQLAlchemy 2.0 中唯一的模型,目前通过将 future=True 标志传递给 create_engine() 函数以及 Session() 构造函数,可以在 1.4 下完全启用;
- 完全支持 Python asyncio 的 Core 和 ORM。这个新系统利用 greenlet 上下文切换库来调整 SQLAlchemy 的全部内容,使其可以在一个 asyncio 前端使用,同时在 asyncio 事件循环中直接对 asyncio 数据库驱动进行操作,而不需要线程执行器。目前已经包含了对 asyncpg 和 aiomysql 的支持,更多的驱动正在开发中;
- 大幅提高了 ORM 查询的可扩展性,使用了新的钩子和选项,包括 SessionEvents.do_orm_execute() 钩子和 with_loader_criteria() 函数,可以可靠地、可预测地拦截和修改所有带有附加条件的 ORM 查询;
- 对 PEP-484 和 Mypy 的原生支持现在正在开发中,其中包括一个全新的 Mypy 插件的 alpha 版本,它与新发布的 stubs 库 sqlalchemy2-stubs 一起运行。
1.4.0 版本的完整变更日志可查看:https://www.sqlalchemy.org/changelog/CHANGES_1_4_0

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Taro 3.1.4 发布,BAT 小程序、H5 与 RN 端统一框架
Taro 3.1.4发布了。Taro 是一个开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5 等应用。此版本更新内容包括: 修复 修复环境变量失效的问题,fix#8900 小程序 修复无法移除组件class属性的问题 Typings 增加getUserProfile的类型 更新说明:https://github.com/NervJS/taro/releases/tag/v3.1.4
- 下一篇
Git for Windows 2.31.0 发布
Git for Windows2.31.0 已发布,主要更新内容如下: New Features 随附Git v2.31.0 随附OpenSSH v8.5p1 随附TIG v2.5.3 Git for Windows 现在附带了一个实验性的内置文件系统监视器,无需安装 Watchman 和 settingcore.fsmonitor。可以通过设置feature.manyFiles=true和feature.experimental=true(或直接通过core.useBuiltinFSMonitor=true)将其打开。 随附Git Credential Manager Core v2.0.394.50751 随附GNU TLS v3.7.1 更新说明:https://github.com/git-for-windows/git/releases/tag/v2.31.0.windows.1
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS关闭SELinux安全模块
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7