问题:

python 使用包cx_Oracle连接Oracle数据,出现错误cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library,百度了下问题,大体是因为python和cx_Oracle以及Oracle客户端的位数不一致造成的

解决办法:

因为我的python 是anaconda3安装的3.7.6版本,操作系统是win10   64位,重新下载了Oracle的客户端,下载地址如下:

https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html

选择对应的版本,我选的下面版本

下载后解压,为了方便,把解压后的文件放在了anaconda目录下,如果是直接安装的python,也可以放在python的安装目录下:

再找到  instantclient_11_2  中的  oci.dll,oraocci11.dll,oraociei11.dll  三个文件,并复制到LIb中的site-packages下,

最后,把  instantclient_11_2  文件目录添加到环境变量:

系统变量也做了添加

最后的最后,不知道为什么这样做,但这样做可以解决问题!

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐