配置Python3.11+Spyder(Anaconda3)时遇pyodbc驱动加载错误求助
解决思路
核心排查:32/64位不匹配(错误193的首要诱因)
- 确认Python位数:执行命令
python -c "import sys; print(sys.maxsize > 2**32)",返回True为64位,False为32位。 - 严格匹配位数环境:
- 64位Python → 用64位ODBC数据源(打开
C:\Windows\System32\odbcad32.exe配置),且安装64位Progress OpenEdge驱动。 - 32位Python → 用32位ODBC数据源(打开
C:\Windows\SysWOW64\odbcad32.exe配置),且安装32位Progress OpenEdge驱动。
- 64位Python → 用64位ODBC数据源(打开
- 对比原电脑的Python、驱动、数据源位数,确保新电脑完全一致。
驱动文件与权限检查
- 用Dependencies工具打开
C:\Progress\OpenEdge\pgoe26.dll,查看是否缺失依赖DLL。若有缺失,从原电脑复制同位数的对应文件,或修复系统组件。 - 确认
C:\Progress\OpenEdge文件夹权限:右键→属性→安全,确保当前用户有读取和执行权限,建议以管理员身份重新安装驱动。
连接字符串验证
- 对比原电脑的连接字符串,排查无效属性或拼写错误:
- 标准格式示例:
DRIVER={Progress OpenEdge 11.1 Driver};DB=数据库名;HOST=主机地址;PORT=端口号;UID=用户名;PWD=密码 - 移除非标准自定义参数,新环境可能不兼容。
- 标准格式示例:
- 先在对应位数的ODBC数据源管理器中测试连接(选中数据源点击「测试连接」),先解决数据源问题再回到脚本。
环境变量与路径检查
- 确认
C:\Progress\OpenEdge已添加到系统环境变量PATH(而非仅用户PATH),添加后重启命令行/IDE再测试。 - 对比原电脑的系统PATH,确保新电脑包含所有驱动相关路径。
驱动版本一致性
- 查看原电脑驱动版本:在ODBC数据源管理器「驱动」选项卡中,找到Progress OpenEdge 11.1 Driver查看版本号。
- 新电脑安装完全相同版本的驱动(含补丁包),避免版本差异导致的兼容性问题。
内容的提问来源于stack exchange,提问作者techbump01
相关产品推荐
相关产品推荐

