Error when importing cx_Oracle module [Python]

2019-02-25 02:03发布

I use Windows 7 64 bit and Oracle 10g. I have installed python-2.7.2.amd64 and cx_Oracle-5.1-10g.win-amd64-py2.7.

When I importing cx_Oracle module I get this error: Traceback (most recent call last): File "C:\Osebno\test.py", line 1, in import cx_oracle ImportError: No module named cx_oracle

Can someone please tell me what is wrong?

5条回答
甜甜的少女心
2楼-- · 2019-02-25 02:25

after installing the cx_Oracle download the instant client form oracle owth all DLLs , then copy then in the same directory of cx_Oracle.pyd , it will work directly

tried and worked for me.

查看更多
看我几分像从前
3楼-- · 2019-02-25 02:31

It's not finding the module.

Things to investigate: Do you have several python installations? Did it go to the right one? Do a global search for cx_oracle and see if it's in the correct place. Check your PYTHONPATH variable. Check Python's registry values HKLM\Software\Python\Pyhoncore. Are they correct?

查看更多
欢心
4楼-- · 2019-02-25 02:34

I had this same issue under Windows. I used Dependency Walker to open up the cx_Oracle.pyd file in C:\Python\Libs\site-libraries\ and reviewed the findings that dependency walker gave.

Dependency Walker showed me that in this case I had the x86 version of Python 2.7.2 installed and x64 version of the Oracle client & client DLL (oci.dll) and was trying to use the x64 version of the cx_Oracle module. With that knowledge I installed Python 2.7.2 x86_64 for Windows and everything was right as rain. The alternative was to install the x86 version of the Oracle client & cx_Oracle which is much more of a PITA than installing a new Python interpreter.

Also, as this was news to me, you must have the Oracle client installed as well as it provides the 'OCI.dll' client library that cx_Oracle uses. It's located here: Oracle Client Installer Windows x64. Probably helps if one reads the documentation. ;)

Either way, Dependency walker could give you a big clue as to what your issue is if you're having import errors. Unfortunately on-import error messages can be quite ambiguous. I received the same error you referenced and number of other less than specific errors as well.

查看更多
欢心
5楼-- · 2019-02-25 02:47

Have you tried import cx_Oracle (upper-case O) instead of import cx_oracle?

查看更多
贼婆χ
6楼-- · 2019-02-25 02:51

See this answer: https://stackoverflow.com/a/19552263/496289

ignore this.... making up other 17 bytes that're needed to make this post long enough...

查看更多
登录 后发表回答