Windows10x64 / VisualStudio2017 Professinal
こちらの問い合わせに関係する話題ですが、Python学習中で、Oracle DataBase severへの接続を試行中です。
VusualStudio2017で 以下コーディングを施し
python
1import jpype 2import jaydebeapi 3 4JHOME = jpype.getDefaultJVMPath() 5jpype.startJVM(JHOME, '-Djava.class.path=/ojdbc8-full/ojdbc8.jar') 6con = jaydebeapi.connect('oracle.jdbc.driver.OracleDriver','jdbc:oracle:thin:XXXXXXXXXXXX/XXXXXXXX@12.34.56.78:1521:XXXXX') 7 8cur = con.cursor() 9cur.execute('select dummy from dual') 10r = cur.fetchall() 11print(r[0][0]) 12cur.close() 13con.close()
デバッグ実行すると、★デバッグアダプターが予期せず終了しました。★というメッセージダイアログを出力し、デバッガが落ちてしまいます。
**【質問】
以下画像のとおりですが この状況を克服するには どういった対策を施せばよろしいですか?
**
ちなみに、オブジェクトの変数con'以降をコメントアウトすれば 動作します。つまりは...この'con'を致命的に生成できない理由が生じていることが予想されます。
Pythonの拡張モジュールであるjpypeとjaydebeapiは pipを介し本日取得したものですが、ネット上の記事を参考に最新Verではないものを敢えて選択しています。また、現在起きている障害に関連しているか不明ですが、
この入手過程で、C++のコンパイラ(cl.exe)が当初自身の開発端末に存在してなかったことで、だいぶ手こずりました。
C++のコンパイラ(cl.exe)を入手して、この所在を環境変数PATHに登録した上でjpype(jaydebeapi)のセットアップを済ませたのですが、
該当exeが x86とx64というフォルダ双方に格納され かつ、各々のフォルダは更にHostx86フォルダとHostx64フォルダ双方に配置されていたことで、計4つも存在してしまい、この中から一つを選択する必要がありました。現在のところx64フォルダ内のx86版を環境変数に採用していますが、これが正しい選択であったのかは分かりません。VisualStudio2017がx86ソフトであることが気がかりで、pipで入手時に正しいコンパイル(??)が行われているか不安です。
ネット上の記事 一応に模索しましたが、問題解決に結びつくような事例を見つけることができませんでした。
どなたか状況進展のための ご見解を頂けませんでしょうか、何卒よろしくお願い申しあげます。
あなたの回答
tips
プレビュー