2016-04-25 11 views
1

への接続:Pyodbc私はPyodbcを使用してOracleデータベースに接続しようとしているOracleの

pyodbc.connect('{Microsoft ODBC for Oracle};Server=serverxzy.com:1234;Uid=myusername;Pwd=pass123') 

私は、次のエラーメッセージが出ます:それを修正するためにどのように任意の提案をいただければ幸いです

pyodbc.Error: ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)') 

を。私は特にpyodbcをcx_Oracleではなく動作させることに興味があります。

答えて

0

Oracle用の独自のライブラリcx_Oracleを使用する必要があります。また、OracleクライアントとSDKをインストールする必要があります。

これは、すべてのあなたは、単に可能に設定されたら:

import cx_Oracle 

conn_str = 'USER/[email protected]:PORT/ALIAS' 
conn = cx_Oracle.connect(conn_str) 

次にあなたがオンラインでCONNオブジェクトにカーソルを作成することができます。

c = conn.cursor() 

そして、あなたはSQLを実行できます。

c.execute(SQL) 
+0

もしそれが単純なら、私はcx_Oracleからpyodbcに切り替えることを試みていないでしょう。しかし、多分あなたはその場合に私の他の質問に答えることができます:http://stackoverflow.com/questions/36845401/cx-oracle-importerror-dll-load-failed-the-specified-procedure-could-not-be-fo – Nickpick

1

DRIVERconnection stringに指定することを検討してください。

pyodbc.connect('DRIVER={Microsoft ODBC for Oracle};Server=serverxzy.com:1234; 
       Uid=myusername;Pwd=pass123') 
+0

これは影響がありません – Nickpick

+0

同じ正確なエラー? OracleドライバがPythonのビット版にアライメントされているかどうかを確認しますか? ODBCドライバ/ DSNは、ODBCcad32.exeのC:\ Windows \ System32とC:\ Windows \ SysWOW64の両方にあります。また、私は[pypyodbc](http://stackoverflow.com/questions/14463591/does-pyodbc-have-any-design-advantages-over-pypyodbc)を使用しています。 – Parfait

関連する問題