Python 2.7 cx\ U Oracle 6.0rc1-无法加载Oracle客户端库%1不是有效的Win32应用程序

Python 2.7 cx\ U Oracle 6.0rc1-无法加载Oracle客户端库%1不是有效的Win32应用程序,python-2.7,cx-oracle,Python 2.7,Cx Oracle,我有一个Python脚本,如下所示: print ("Python version: " + platform.python_version()) print ("cx_Oracle version: " + cx_Oracle.version) print ("Oracle client: " + str(cx_Oracle.clientversion()).replace(', ','.')) OraUid="secret" OraPwd="secret"

我有一个Python脚本,如下所示:

print ("Python version: " + platform.python_version())
print ("cx_Oracle version: " + cx_Oracle.version)
print ("Oracle client: " + str(cx_Oracle.clientversion()).replace(', ','.'))

OraUid="secret"                 
OraPwd="secret"              
OraDB="secret"               

connection = cx_Oracle.connect(OraUid + "/" + OraPwd + "@" + OraDB)
我使用Windows终端来运行此操作,并得到以下错误。

我的系统上还有64位windows 7 | Python 2.7 32位| Oracle客户端32和64位版本。
请提供帮助。

您的Python、cx\u Oracle和Oracle客户端安装必须全部为64位或全部为32位。你不能混搭。您收到的错误表明,您正在尝试使用32位Python加载64位Oracle客户端。如果使用32位Python,请确保32位Oracle客户端库首先位于PATH环境变量中。

您的Python、cx\u Oracle和Oracle客户端安装必须全部为64位或全部为32位。你不能混搭。您收到的错误表明,您正在尝试使用32位Python加载64位Oracle客户端。如果您使用的是32位Python,请确保32位Oracle客户端库首先位于PATH环境变量中。

这很有意义,因此我的Python、Oracle客户端和cx_Oracle都必须是相同的位版本?顺便说一句,这就解决了问题。奇怪的是,5.2.1版本的cx_Oracle能够正常工作,但6.x版本却不能,但我认为无论我拥有什么版本的cx_Oracle,它都应该与我的Oracle客户端一点一点地匹配。是的,它都必须匹配。:-)如果这解决了你的问题,请接受答案!谢谢。安东尼:那么,如果我有一个64位的Oracle客户端,并且我有一个3.6版本的Python,那么你的评论的另一个后续内容就是;当我在“脚本文件夹”下执行pip安装cx_Oracle--pre时,它会自动获取cx_Oracle的正确位版本,以及与我的Python版本匹配的正确版本。如果使用命令“Python-m pip install cx_Oracle--upgrade--pre”安装cx_Oracle,它会自动确定您的平台,体系结构(32位或64位),下载并安装正确的二进制文件。更简单,更不容易出错!当然,您仍然需要确保您的Oracle Instant Client匹配!这是有道理的,所以我的python、oracle客户端和cx_oracle都必须是相同的位版本?顺便说一句,这就解决了问题。奇怪的是,5.2.1版本的cx_Oracle能够正常工作,但6.x版本却不能,但我认为无论我拥有什么版本的cx_Oracle,它都应该与我的Oracle客户端一点一点地匹配。是的,它都必须匹配。:-)如果这解决了你的问题,请接受答案!谢谢。安东尼:那么,如果我有一个64位的Oracle客户端,并且我有一个3.6版本的Python,那么你的评论的另一个后续内容就是;当我在“脚本文件夹”下执行pip安装cx_Oracle--pre时,它会自动获取cx_Oracle的正确位版本,以及与我的Python版本匹配的正确版本。如果使用命令“Python-m pip install cx_Oracle--upgrade--pre”安装cx_Oracle,它会自动确定您的平台,体系结构(32位或64位),下载并安装正确的二进制文件。更简单,更不容易出错!当然,您仍然需要确保您的Oracle Instant Client匹配!