课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
SQLAlchemy 1.3.20发布了。SQLAlchemy是一个Python的SQL工具包以及数据库对象映射(ORM)框架。它包含整套企业级持久化模式,专门用于高效和高性能的数据库访问。
本次更新内容如下:
ORM相关
ArgumentError如果将的目标参数Query.join()设置为未映射的对象,则会引发一个更详细的信息。
修复了以下问题:对实际上不是映射属性的字符串属性名称(例如普通的Python描述符)使用加载程序选项时,将引发无效的AttributeError;现在会出现错误提示。
引擎相关
修复了发送给非子类对象SQLAlchemyError或子类的非字符串对象(如某些第三方方言)将无法正确字符串化的问题。
修复了在sqlalchemy.exc模块中未使用SQLAlchemy的标准后期导入系统的功能级别的导入。
SQL相关
解决了pickle.dumps()针对Over构造的操作会产生递归溢出的问题。
修复了一个错误,即当一个column()同时被添加到多个table()的情况下,不会发生错误。对于Column和Table对象来说,这个错误被忽视了。现在会在发生这种情况时引发一个ArgumentError。
PostgreSQL相关
现在,通过将主机/端口组合传递给查询字符串,psycopg2方言支持PostgreSQL多个主机连接。
调整Comparator.any()和Comparator.all()方法,以实现对否定的直接“ NOT”运算,而不是否定比较运算符。
修复了以下问题:在ENUM测试过程中发出CREATE TYPE或DROP TYPE时,该类型将不查询架构转换图,以查看该类型是否存在。此外,修复了以下问题:如果在单个DDL序列中多次遇到相同的枚举,则“检查”查询将重复运行,而不是依赖于缓存的值。
MySQL相关
调整了MySQL方言,使其能够正确括号化MySQL 8所接受的功能索引表达式。
与with_for_update()一起使用的"skip_locked "关键字在MariaDB后端使用时将发出警告,然后将被忽略。在SQLAlchemy 1.4中,这是一个过时的行为,因为请求"skip locked "的应用程序正在寻找一个在这些后端上不可用的非阻塞操作。
修复了以下错误:使用MySQL多表格式针对JOIN的UPDATE语句如果没有WHERE子句,则无法包含目标表的表前缀,因为仅扫描WHERE子句以检测到“多表更新”那一点。现在,如果目标是JOIN,则还将扫描目标,以将最左边的表作为主表,将其他条目作为其他FROM条目。
添加新的MySQL保留字:cube,lateral在MySQL 8.0.1和8.0.14,分别增加;这表示如果将这些术语用作表或列标识符名称,则将用引号引起来。
MSSQL相关
修复了以下问题:Azure DW的SQLAlchemy连接URI authentication=ActiveDirectoryIntegrated (没有用户名和密码)没有以Azure DW实例可接受的方式构造ODBC连接字符串。
其他更新
修正了当调用Engine.dispose()时,以下池参数没有被传播到新创建的池中的问题:pre_ping,use_lifo。另外,recycle和reset_on_return参数现在会被传播到AssertionPool类中。
现在,当尝试使用关联代理元素作为纯列表达式从SQL函数中SELECTed或在SQL函数中使用时,会引发一个错误提示;目前不支持这种用例。
修复了针对Pytest 6.x运行时测试套件中的不兼容性。
选择的人多的机构就是好机构,达内每年近10万学员的选择,来达内给你一个不一样的培训体验。达内目前开设24大课程体系,Java编程、UI设计、网络营销、web前端培训等课程。达内每月开设免费课程试听训练营,欢迎来电预约免费试听,领取免费课程资料。来合肥IT培训,让你的人生有不一样的精彩。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!