关于Python3连接Oracle时报错"64-bit Oracle Client library cannot be loaded"解决方案
关于Python3连接Oracle数据库异常的处理:
在使用Python连接Oracle时报错"64-bit Oracle Client library cannot be loaded"。很多时候,很奇怪我们用PLSQL是可以正常访问Oracle数据库的,但是在使用Python连接数据库的时候往往会以上的错误。其实是缺少了一个Oracle Instant Client所致。
遇到这个问题我们分四步来解决:
1)下载系统对应的Oracle Instant Client版本,可以去官网下载:https://www.oracle.com/technetwork/topics/winx64soft-089540.html
下载一个数据最大的包
注意:勾选Accept License Agreement 接受协议,下载成功后,将此压缩包解压,最好是放置在Oracle或者Python的安装路径下。
2)配置环境变量:
将Oracle Instant Client的路径配到环境变量Path中,具体步骤如下:
注意:要配到子目录instantclient_XX_X(X是版本号)这一级,例如:E:\oracle\product\10.2.0\db_1\bin\instantclient-basiclite-windows.x64-18.3.0.0.0dbru\instantclient_18_3
3)这样操作以后,由于数据编码不一样,会导致查出来的中文会显示为乱码,再进行配置编码就会正常显示,步骤如下:
5)安装与oracle版本,及python版本一致的cx-oracle驱动(例如python3.6,及oracle-11xe的)
https://pypi.org/project/cx-Oracle/5.3/#files
下载安装
6)关键点,python版本 cx-oracle版本 OracleInstantClient版本必须相对应统一