繁体   English   中英

Python无法在Windows 7上加载cx_Oracle

[英]Python cannot load cx_Oracle on Windows 7

我安装了python-2.7.amd64.msi和cx_Oracle-5.1.2-11g.win-amd64-py2.7.msi。

我对PATH和PYTHONPATH环境变量进行了很多讨论,但是没有任何帮助加载cx_Oracle模块。 目前,PYTHONPATH设置为C:\\ Python27 \\ Lib \\ site-packages

我最基本的程序是

import sys
print sys.path

import cx_Oracle

conn_str = u'xxx/xxx@server/XXX'
conn  = cx_Oracle.connect(conn_str)
c = conn.cursor()
c.execute(u'select * from table')
conn.close()

程序输出为:

['C:\\Users\\terry\\IdeaProjects\\PythonScripts', 'C:\\Python27\\Lib\\site-packages', 'C:\\WINDOWS\\system32\\python27.zip', 'C:\\Python27\\DLLs', 'C:\\Python27\\lib', 'C:\\Python27\\lib\\plat-win', 'C:\\Python27\\lib\\lib-tk', 'C:\\Python27']
Traceback (most recent call last):
File "OracleTest.py", line 4, in <module>
import cx_Oracle
ImportError: DLL load failed: The specified module could not be found.

我还添加注册表项详见这里

这在Linux上可以正常工作,因此Windows设置似乎有问题。 但是我几乎没有想法。

原来,这个问题是(我认为)我没有在Windows中设置ORACLE_HOME环境变量。 这必须指向您的Oracle Instantclient目录,例如ORACLE_HOME = C:\\ instantclient_11_2

故事的“我认为”部分是,即使设置了它也无济于事。 我卸载了cx_Oracle并从头开始重新安装了它。 这次我还使用了python网站上的cx_Oracle.EXE,而不是sourceforge的cx_Oracle.MSI文件。 从理论上讲,他们会做同样的事情。 但是从理论上讲,我并不需要花一天的时间来搭建好环境。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM