gpt4 book ai didi

python 和甲骨文

转载 作者:太空宇宙 更新时间:2023-11-03 13:53:48 27 4
gpt4 key购买 nike

我希望能够通过 python 连接到 Oracle 10.1.0.2.0(安装在不同的机器上)。

我的 comp 在安装了 Python 2.6 的 Ubuntu 9.04 Jaunty 上运行。

我已经下载并解压了 instantclient-basic-linux32-10.1.0.5-20060511.zip ,设置 LD_LIBRARY_PATHORACLE_HOME 指向我解压的目录。然后我下载了 cx_Oracle-5.0.2-10g-py26-1.i386.rpm 并安装了它:

$sudo alien -i cx_Oracle-5.0.2-10g-py26-1.i386.rpm

当我运行时

$python -c 'import cx_Oracle'

我得到:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: /usr/lib/python2.6/cx_Oracle.so: undefined symbol: OCIClientVersion

帮助将不胜感激。

最佳答案

我相信 OCIClientVersion 需要 Oracle 10g 第 2 版,但您使用的是第 1 版。

您下载的 cx_Oracle 二进制文件似乎是使用 -DORACLE_10GR2 编译的,这使得它包含 OCIClientVersion 调用。由于这是一个仅限编译时的选项,因此确实应该分别下载 10g 和 10gR2,但似乎没有:

This module has been built with Oracle 9.2.0, 10.2.0, 11.1.0 on Linux

因此您可能需要下载 cx_Oracle 源代码并自行构建它们。 (因此,您将需要 Python 和 Oracle 客户端 header 。)

或者,您可以尝试为 Oracle 9i 构建 cx_Oracle。这听起来有点狡猾,但显然应该有效。

关于 python 和甲骨文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1796198/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com