# - This import requires appropriate oraocciXX.dll to be available in PATH (on windows)
# (Probably LD_LIBRARY_PATH or LD_LIBRARY_PATH64 on POSIX)
# where XX is the oracle DB version, e.g. oraocci11.dll for Oracle 11g.
# - This dll is part of the Oracle Instant client pkg available here:
# http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
# - Also ensure that python, cx_Oracle and Oracle Client are of same arch (32 or 64-bit)
#
import cx_Oracle
次のアーチ(32ビットまたは64ビット)を見つけることができます:
- コマンドラインでPythonをインタラクティブモードで実行するだけでPythonを実行できます。
- cx_Oracle:ダウンロードしたファイルの名前を確認してください。
- Oracleクライアント:
- クライアントパッケージの一部であるsqlplusを実行します
- タスクマネージャを起動し、sqlplus.exeの横に「* 32」があるか(=32ビット)、ないか(=64ビット)を確認します
- sqlplusがない場合は、
dumpbin /headers oraocciXX.dll
を使用してください
- POSIXを使用している場合は、おそらくすでに知っているでしょう。
file oraocciXX.so
を使用します
最後に、まだ理解できない場合は、ここは本当にダミーの指示です:
- 32ビットバージョンのpython、cx_Oracle、およびOracleInstantClientがインストールされていることを確認してください。これらも64ビットである可能性がありますが、3つすべてで同じである必要があります。混合して一致させることはできません。リンク:
- Oracle Instant Client
C:\ProgFiles\OraClient\11_2
にインストールされているとします。 - cx_Oracle
- Python
- Oracle Instant Client
- ウィンドウ:
-
set PATH=%PATH%;C:\ProgFiles\OraClient\11_2
-
- POSIX(Linux / Unix / Solaris ...)<-未テスト..
-
export LD_LIBRARY_PATH=/path/to/your/32bit/oraocciXX.so
- (64ビット)
export LD_LIBRARY_PATH64=/path/to/your/64bit/oraocciXX.so
-
-
path-to-python/python.exe -c "import cx_Oracle"
を実行します セットアップが機能しているかどうかをテストします。- 印刷する場合
- 何もありません:それなら成功します。
-
ImportError: DLL load failed: The specified module could not be found
:その後、oraocciXXが見つかりません。環境変数を正しく設定します。 -
ImportError: DLL load failed: %1 is not a valid Win32 application
:32/64ビットの不一致があります。