操作系统: win7-32bit python版本:3.7.0 oracle版本:10.2.0
// pip方式安装
// 打开cmd输入如下命令
pip install cx_Oracle
自动下载并安装完成后,进入C:\Users\Administrator\AppData\Local\Programs\Python\Python37-32\Lib\site-packages查看。可以看到安装的是7.0.0版本。
>>>import cx_Oracle
>>>conn = cx_Oracle.connect('Username/password@Host:Port/SERVICE_NAME')
// 报错:提示安装的oracle版本过低
>>>cx_Oracle.DatabaseError: DPI-1050: Oracle Client library is at version 10.2 but must be at version 11.2 or higher
由于这是我几年前就装的oracle客户端,已经跟不上时代了。起初想着要么干脆下个11.2以上的版本算了。可当我到oracle官网想要下载时,发现还要注册官网账号!懒得注册,于是找了度娘。 发现可以通过把instantclient11.2中的oci.dll、oraocci11.dll、oraociei11.dll提取出来,放到PY目录的Libs/site-packages文件夹下。电脑里正好有instantclient-basic-nt-11.2.0.3.0-x86.zip,于是尝试:
PS:为什么1中的目录不行?如果有大神看到希望能帮忙解答一下。谢谢! 2019/2/2----找到原因:由于我安装了Thonny,生成了C:\Users\Administrator\AppData\Roaming\Python\Python37\site-packages。删除该目录后,将三个dll放到C:\Users\Administrator\AppData\Local\Programs\Python\Python37-32\Lib\site-packages,再次尝试数据库连接。成功!