我正在尝试使用cx_Oracle(64位python)访问我的Oracle数据库。我遵循了here的指示。在
我安装了cx_Oracle 7.2.3
,并用VC 2015-2019
下载了{
实际上,我已经安装了几乎所有版本的VC++
我将Oracle Instant Client文件夹添加到我的系统环境变量中,并通过在cmd中键入'PATH'对其进行了双重检查。在
但是,当我运行cx_Oracle.connect('xxx')
时,我仍然收到一个错误消息
cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library: "The specified module could not be found". See https://oracle.github.io/odpi/doc/installation.html#windows for help
错误的可能原因是什么?如何修复?在
发生此错误的主要原因是instantclient版本与cx\u Oracle不兼容。解决方案是用错误消息中提到的所需版本替换instantclient(在您的例子中是64位)。在
如何替换instantclient: 如果问题仍然存在,请找到最新的instantClient(注意!您的错误引用的版本不是Python/Windows版本,在上面的例子中是64位)在Oracle Downloads上,下载并将其替换为系统变量上的当前路径,或者将新下载的内容替换为当前的instantClient文件夹。在
另外,检查与oracledb版本相对应的VS可再发行版本是正确的,并按照cx_oracle Docs中的引用进行安装是建议的方法,但在我们的许多情况下,这并没有导致问题。在
相关问题 更多 >
编程相关推荐