一、查看版本
首先,查看python版本与Oracle的客户端是否都是64位或者32位
查看python安装目录
pip --version
二、下载Oracle客户端
1、查看oracle版本
SELECT * FROM v$version;
查询出的oracle版本是19,于是需要下载对应的版本,下载地址:
https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html
添加环境变量,将下载好的客户端解压,并将其添加进环境变量,比如:C:\tool\instantclient-basic-windows.x64-19.11.0.0.0dbru\instantclient_19_11
三、下载cx_Oracle
查看到windows为64位,然后python是3.8版本64位,于是选择cx_Oracle也应该是与python对应的版本。
下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyhook
安装cx_Oracle包,注意安装的时候,最好是下载后在用pip执行安装命令,否则可能会报错。
pip install C:\tool\cx_Oracle-8.2.0-cp38-cp38-win_amd64.whl
然后确认是否添加oracle客户端的环境变量
四、添加oracle客户端.dll文件至python目录
把oracle客户端的安装文件中以.dll结尾的文件复制到python的安装目录中
五、分析思路
1、查看加载的环境变量
查看python是否加载了环境变量
import os
os.environ
2、查看加载的客户端版本
注意,navicate和python程序加载的版本不相同。例如:
python加载的版本是instantclient_11_2,所以此时需要将instantclient_11_2文件夹下的dll文件拷贝至python的安装目录中
navicate加载的版本是instantclient_12_2
参考:https://blog.csdn.net/niko_csdn/article/details/104271908