Oracleデータベースに接続しようとしていますが、pythonスクリプトがcx_Oracleを見つけられません。これが私のスクリプトです。
import cx_Oracle
con = cx_Oracle.connect(‘DBNAME/[email protected]:1521/yeppers’)
print(con.version)
con.close()
これは私が得るエラーです:
================= RESTART: C:\Python35\Connect_To_Oracle.py =================
Traceback (most recent call last):
File "C:\Python35\Connect_To_Oracle.py", line 1, in <module>
import cx_Oracle
cx_Oracle.DatabaseError: DPI-1047: Oracle Client library cannot be loaded: The specified module could not be found. See https://Oracle.github.io/odpi/doc/installation.html for help
これが私のO/Sとバージョン情報です。
これはcx_Oracleをインストールするために私がしたことです:
1. Download Instant Client (Basic Client) from Oracle here : http://www.Oracle.com/technetwork/topics/winx64soft-089540.html .
2. Unzip.
3. I added a new System Variable called Oracle_HOME and pointed it to c:\Down\InstantClient , which is where I unzipped the above. This is what I downloaded: instantclient-basic-windows.x64-12.2.0.1.0
4. You have to download the whl file from here: https://pypi.python.org/pypi/cx_Oracle/ To do this, you need to know your version of Python and your type of processor.
5. You download into the scripts folder and then run pip install wheelfilename.whl
誰かがエラーの原因を教えてくれませんか?
python=環境をセットアップしているときに、WindowsボックスのPATH変数にinstantclientファイルを追加しましたが、Oracle_HOMEの定義もありません。PATHに追加すると、プロセス。
しかし、whlファイルをインストールしたときに、エラーやメッセージはありませんでしたか?
代わりに、pipを介してcx_Oracleモジュールをインストールできますか? cx_OracleのWebサイトには、コマンドがpython -m pip install cx_Oracle
としてリストされていますが、PATH変数が正しく設定されていれば、pip3 install cx_Oracle
を使用してコマンドを実行できるはずです。
$ Python/Lib/site-packages /ディレクトリにcx_Oracleがありますか?サイトパッケージが見つからない場合は、IDLE内でこれを使用して、場所を探します。
>>> import site
>>> site.getsitepackages()
['C:\\Python36', 'C:\\Python36\\lib\\site-packages']
https://www.Oracle.com/technetwork/topics/winx64soft-089540.html からOracleインスタントクライアントをダウンロードし、フォルダーの場所をWindowsパスに追加することで問題を解決しました。私のためにうまくいきました!