尝试通过 pandas 连接到 ibm db2 数据库时出错:无法装入插件:sqlalchemy.dialects:ibm_db_sa



您好,我在尝试将 Pandas 数据帧保存到 ibm db2 数据库时收到此错误:

无法加载插件:sqlalchemy.dialects:ibm_db_sa

我尝试了这个解决方案,但不起作用:

df = pd.read_csv('https://data.cityofchicago.org/resource/jcxq-k9xf.csv')
engine = sqlalchemy.create_engine('ibm_db_sa://'+ dsn_uid + ':' + dsn_pwd + '@'+dsn_hostname+':'+dsn_port+'/' + dsn_database )
chicago_socioeconomic_dataSQL = df.to_sql('chicago_socioeconomic_data', engine, if_exists = 'append', index=False)

有人可以帮助我吗?

谢谢 马迪奥

通过安装所需的先决条件模块 (ibm_db_sa( 来解决,该模块还将安装ibm_db模块和ibm_db_dbi模块,并且(默认情况下,除非另有指示(还将Db2 ODBC and CLI driver安装到site_packages树中。

如果要连接到 Db2-for-Linux/Unix/Windows,那么不需要安装其他 IBM 软件或许可证文件。

如果要从 Microsoft-Windows 或 Linux 直接连接到 Db2-for-i 系列 (AS/400(,那么应首先使用可选的 ODBC/CLI 支持安装"IBM i 访问",并将其配置为连接到 Db2 for i。 有关详细信息,请参阅其文档。将IBM_DB_HOME环境变量设置为指向安装"IBM i 访问"组件的目录。正是这个环境变量将告诉ibm_db模块不要安装常规的 ODBC/CLI 驱动程序,而是改用IBM i access组件。 然后,您可以安装ibm_db_sa模块,然后该模块将使用"IBM i access"产品与 i 系列数据库进行通信。

如果要直接连接到 Db2 for Z/OS,那么如果没有 Db2-connect 的许可文件,将无法进行连接,或者可以通过单独的 Db2-connect 网关间接连接(在这种情况下,您不需要部署单独的许可证文件(。请参阅 IBM 的说明,将许可证文件部署到 clidriver 可以使用它的正确位置。

最新更新