Python3使用ibm-db连接DB2时,报错 SQLCODE=-1042
前言
第一次使用DB2的磕磕碰碰碰…
一、安装
下载ibm_db模块的安装包,将ibm_db-3.0.3.tar.gz 解压到 C:\Python37\Lib\site-packages 目录下,进入ibm_db-3.0.3目录,然后命令行执行 python setup.py install命令安装二、报错处理
1.安装报错
ibm_db模块的安装依赖于ntx64_odbc_cli.zip:
下载好nt32_odbc_cli.zip,解压到ibm_db-3.0.3目录下,然后在ibm_db-3.0.3目录下重新执行 python setup.py install命令,安装完成
进入python交互模式, 输入import ibm_db,如果没有报错即安装成功安装成功
2.报错SQLCODE=1042
代码如下:
import ibm_db
ibm_db.connect("DATABASE=db;HOSTNAME=host;PORT=60001;PROTOCOL=TCPIP;UID=user;PWD=pwd",'','')
此处报错[IBM][CLI Driver] SQL1042C An unexpected system error occurred. SQLSTATE=58004 SQLCODE=-1042:
在ntx64_odbc_cli.zip解压文件夹里,…/clidriver\bin\amd64.VC12.CRT中找到msvcp120.dll、msvcr120.dll这两个文件,复制到C:\Windows\System32中。
再执行,无报错了。