配置python用cx_Oracle连接oracle,或使用cx_Oracle连接数据库时报错: cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library

首先报错DPI-1047原因分析

有分析才有进步,没进步心情又怎么giao起来呢是吧:

  1):没有oracle客户端instantclient_**_*安装文件,并且该目录文件没有添加到环境变量;

  2):该instantclient_**_*安装文件中的.dll结尾的三个动态链接库文件没有复制到python的运行环境中;

  3):Oracle的客户端instantclient_**_*,Python,cx_Oracle是否都是64位的(或者32位)

 

1. 安装Oracle客户端的版本,添加环境变量

安装oracle客户端instantclient_**_*

由于我的数据库版本是11g和64位的,所以这里下载11g对应的instantclient文件win64位:https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html

也可以到我的网盘下载,链接:https://pan.baidu.com/s/1vlernSP6PLHM6P8kCcpFZw 

提取码:zmm1

 

下载解压,这里为了方便管理,将下载的instant文件解压到python文件夹下

并添加环境变量

 

把oracle客户端instantclient_**_*的安装文件中以.dll结尾的三个动态链接库文件,复制到python的安装目录中的Lib的site-packages下

 

2. cmd,查看Py的版本

 

3. 根据安装的Python的具体版本,下载对应的cx_Oracle版本(py3.7版本对应cx_Oracle的cp37m版本就行)

下载cx_Oracle :下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyhook。由下图的cp37m-win_amd64版本可以确定cx-oracle版本应为8.0.1

直接在PyCharm安装cx-oracle8.0.1就行,

执行代码



 

posted @ 2020-10-27 19:42  举个栗子,举个锤子  阅读(80)  评论(0编辑  收藏