多个版本的Python同时连接Oracle和安装cx

xiaoxiao2021-02-28  8

前两篇文章中讲述了在同一台机器上安装和配置Python2.x和3.x版本的环境,并使它们共存以及在VS中编辑和运行Python的方法,这篇文章来说一说用Python操作Oracle要做的准备工作——cx_Oracle模块在Python2.x和3.x中的安装方法。

当电脑中同时安装了Python2.7 和 Python3.5后,为了能用两个版本的Python 都能顺利连接到Oracle,就需要分别安装py2.7和py3.5对应版本的cx_Oracle模块。需要注意的是,cx_Oracle模块的早期版本比如py2.7对应的版本好像不支持pip安装,再用pip安装时会报一个‘找不到对应版本软件’的错误,这时我们可以用安装包来进行安装,可以到我的资源列表进行下载:(链接待更新)下载后点击下一步下一步傻瓜式操作进行安装即可,注意一下安装路径,安装到Python2.7对应的安装路径下最好。安装完成后打开IDLE测试,import cx_Oracle,如果不报错说明安装成功。py2.7对应的cx_Oracle在win10下安装的还算顺利,需要特别指明的是,应该选对安装版本,还应该下载oracle的instantclient文件并进行一些环境变量的配置才行,否则可能导致安装不能成功,详细内容请参考另一个作者的链接为:http://blog.csdn.net/eden_hu2016/article/details/51148725的文章《Win64安装cx_Oracle过程》由于其叙述简单清楚,所以不再赘述。

下面主要讲述一下WinPython3.5.3中安装cx_Oracle的过程和报错的解决方法。

py3.5可以支持cx_Oracle的pip安装,但是直接用pip执行安装命令并安装完成后,在IDLEX中import cx_Oracle后可能直接导致Python程序崩溃或者报no moudle named cx_Oracle的错误,如果是第一种情况,python程序直接崩掉就需要WinPython 3.5的控制台中执行 uninstall cx_Oracle的命令将cx_Oracle模块卸载下来,然后在从IDLEX中进行import cx_Oracle的测试,知道报错为no moudle named cx_Oracle为止。由于在安装py2.7对应的cx_Oracle时已经安装和配置过oracle instantclient 的相关内容,所以理论上在为py3.5安装对应版本的cx_Oracle时应该不必重复这一步骤。

说一下经过测试安装成功的一个安装步骤:

1、下载cx_Oracle-5.3-11g.win-amd64-py3.5-2.exe安装包进行安装(下载链接:http://download.csdn.net/detail/supergiser_lee/9853427),会报Python version 3.5 required which was not found in the registry 的错误而导致安装失败,如下图:

2、发生上述错误后取消安装,打开WinPython 3.5.3的控制台,再次执行 pip install cx_Oracle的命令,直到安装完成

3、在WinPython3.5.3的IDLEX中import cx_Oracle模块不再报错,说明安装成功。

猜测蓝色图片中的报错应该是由于使用的 WinPython 3.5.3是绿色版的,并未在系统中写入注册表的原因,http://blog.itpub.net/29802484/viewspace-2129952/ 这篇文章给出了解决方法,修改注册表,但是我们并不想将绿色版的python 环境写入注册表,所以最好采用我上面叙述的步骤来安装cx_Oracle-5.3-11g.win-amd64-py3.5-2.exe,我在两台x64的win10电脑上按同样的步骤测试后均成功。

转载请注明原文地址: https://www.6miu.com/read-850137.html

最新回复(0)