2017-02-17 2 views
1

私は、oracle DBをPythonに接続し、Dataframeとして隠蔽する必要があります。利用可能な簡単なパッケージとそれらをインストールする方法を知りたいですか?pythonスクリプトでoracle DBを接続するにはどうすればよいですか?

私はAnaconda 3(Python 3.5.2)を使用していますが、cx_oracleを試しましたが、依存関係のためにインストールできませんでした。それを使用する方法がわからないSQLAlchemyビットについて聞きました。

+0

SQLAlchemyは独自のドライバを持ちません。 'cx_Oracle'のようなものが必要です。このステートメントを拡張することができます: "私はcx_oracleで試しましたが、依存関係のためにインストールできませんでした"おそらく、これらの問題を修正することが最善の方法です。 – Chris

+0

正確なエラーは、 "ImportError:DLLロードに失敗しました:%1は有効なWin32アプリケーションではありません"です。私は事前にコンパイルされたバージョンCx_oracleをインストールしました。 – prady

+0

この時点で私はこの質問を削除し、そのエラーについて新しい質問をします。あなたはそのように目をつけます。 – Chris

答えて

0

は、それは、以下の手順に従った後に働いた

1.Downloadとhttp://www.oracle.com/technetwork/topics/winsoft-085727.htmlからバージョン12を解凍します。 2. Windows環境変数として "ORACLE_HOME"を追加し、その値を... \ instantclient_12_1(そのフォルダを含むのではなく!)に設定します。 3.この同じパスを「パス」環境変数に追加します。 4. cx_Oracleをインストールするだけです。 5.システムを再起動してください

ありがとうございます!

0

私はSQLAlchemy + MySQLの経験があります。 SQLAlchemyのドキュメントから

engine = create_engine('oracle://username:[email protected]:port/database') は、接続文字列です。

どこ:

username =ユーザ名

password =パスワード

host =ホスト名/ IPなど(127.0.0.1)

port =ポート番号

database =データベース名

engine = create_engine('oracle://username:[email protected]:port/database') 
sql = 'Your SQL query in string.' 
df = pd.read_sql(sql,con=engine) 

これは、データフレーム内のSQL応答をお読みください。最後に

+0

Triedは、「cx_Oracle 'という名前のモジュールがありません」というエラーをスローします。私が前に述べたように、依存関係のためにcx_oracleをインストールすることはできませんでした。 Pip installまたはconda installが機能していません。 – prady

+0

@prady、悪いSQLAlchemyはデフォルトでcx_Oracleを使用しています。 –

関連する問題