我在跑...
SQL*Plus: Release 9.2.X.X.X - Production on Wed Jun 22 13:02:14 2011
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.X.X.X - 64bit Production
With the Partitioning, OLAP and Data Mining options
使用Python 2.7.1版
我为Oracle 10g安装了32位版本的cx_Oracle但我得到了
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
import cx_Oracle
ImportError: DLL load failed: The specified procedure could not be found.
当我尝试导入时。
我检查过,我的%ORACLE_HOME%
Env变量设置为我的Oracle客户端安装目录。
我能想到的唯一问题是为Oracle 10g制作的cx_Oracle是指客户端是10g(我的是9)而不是数据库(我的数据库是10g)...或者说cx_Oracle模块是“32位”是指我的远程数据库是32位而不是我的本地机器。我做了一些不同版本的游戏无济于事。
感谢。
编辑:
另外,我被告知Oracle 9应该可以使用某些版本的cx_Oracle ..但是哪些版本?我找不到这样的版本。这里有工作吗?
编辑:
我已在本地计算机上更新为instantclient 10.2。但是,现在我可以导入cx_Oracle,但是当我尝试建立连接时,我得到以下内容:
Traceback (most recent call last):
File "C:\oracleTest.py", line 2, in <module>
connection = cx_Oracle.connect("username/password@(DESCRIPTION STRING)")
DatabaseError: ORA-12705: Cannot access NLS data files or invalid environment specified
答案 0 :(得分:1)
您的Oracle客户端应该与cx_Oracle版本匹配。使用Oracle 9客户端的任何原因?您应该能够下载并安装版本10(甚至11个客户端),并匹配cx_Oracle版本。它们都可以与Oracle 10g一起使用。
我们在工作中使用Oracle 10g,并使用11g客户端(以及相应的cx_Oracle版本)。
编辑:我在这里找到了一些旧版本的cx_Oracle:http://sourceforge.net/projects/cx-oracle/files/
...但您可能需要旧版本的Python(2.6)用于Oracle 9客户端。