You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas 2.0.2调用read_sql报AttributeError错误求助及原因咨询

错误原因解析

核心问题:版本不兼容

你碰到的AttributeError: 'Connection' object has no attribute 'exec_driver_sql',根源是pandas 2.0.2 和 SQLAlchemy 1.3.7 版本不兼容:

  • pandas 2.0及以后版本重构了SQL交互模块,开始调用SQLAlchemy提供的exec_driver_sql方法执行查询;
  • 但exec_driver_sql是SQLAlchemy 1.4版本才新增的接口,你使用的1.3.7属于旧版本,根本没有这个方法,调用自然触发报错。

为什么昨天正常今天突然报错?

你说没手动更新库,但大概率是环境出现了隐性变化:

  • 虚拟环境切换:之前用的是pandas 1.x版本(和SQLAlchemy 1.3完全兼容),今天不小心切换到了装有pandas 2.0.2的环境;
  • 间接依赖更新:安装其他包时,被自动升级了pandas;
  • 连接逻辑的隐式变化:今天的代码执行路径触发了pandas新的SQLAlchemy调用分支,而之前没走到这一步。

临时方案生效的原因

用engine.raw_connection()代替原engine作为con参数时,返回的是数据库原生的DBAPI连接对象,而非SQLAlchemy封装的Connection对象。pandas处理原生连接时会走旧的执行逻辑,不需要调用exec_driver_sql,因此能避开版本兼容问题。

内容的提问来源于stack exchange,提问作者maiseo4allPYwarrior

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 06:35:16