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

使用pyodbc连接IBM i服务器失败,pyodbc.drivers()返回空列表

解决pyodbc连接IBM i时的IM002错误

问题重现

使用以下代码连接IBM i服务器时:

connection = pyodbc.connect(
    DRIVER='{iSeries Access ODBC Driver}',
    SYSTEM='192.111.111.111',
    UID='LUKESKYWALKER',
    PWD='TATOOINE123')
cursor = connection.cursor()

触发错误:

pyodbc.InterfaceError: ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Der Datenquellenname wurde nicht gefunden, und es wurde kein Standardtreiber angegeben (0) (SQLDriverConnect)')

执行print(pyodbc.drivers())返回空列表,重装pyodbc后问题依旧。

解决方案

  • 安装对应版本的IBM i Access ODBC驱动
    pyodbc仅作为ODBC接口,无法直接连接IBM i,必须依赖官方提供的iSeries Access ODBC驱动。需根据系统架构(32/64位)下载匹配的驱动安装包并完成安装。安装后可通过Windows的ODBC数据源管理器(odbcad32.exe,注意32位和64位版本的不同路径)确认驱动是否存在。

  • 匹配Python与驱动的位数
    确保Python的位数(32/64位)和安装的ODBC驱动位数完全一致。例如64位Python必须搭配64位驱动,否则pyodbc无法识别到驱动。

  • 验证驱动识别状态
    重新运行print(pyodbc.drivers()),若输出中包含{iSeries Access ODBC Driver}(或对应版本的驱动名称),说明驱动已被正确识别。

  • 核对连接字符串的驱动名称
    连接字符串中的DRIVER参数必须与pyodbc.drivers()返回的驱动名称完全一致,部分新版本驱动可能命名为{IBM i Access ODBC Driver},需注意名称准确性。

内容的提问来源于stack exchange,提问作者Lukas Fürst

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 23:46:03