0
VBAを使用してTeradataに接続できますが、同じTeradataドライバのPython経由で接続できないという奇妙な問題があります。Teradata ODBC dreiverはPython経由で接続していませんが、vba経由で接続できる
は、以下のコードスニペットです:
1)VBA
connection_string = "Driver={Teradata};" & "DBCName=" & dsn_name & ";Database=" & database_name & "; User ID =" & user_name & ";Password=" & password
と私は正常のTeradataに接続することができています。環境変数を設定し、再インストールTDドライバ:
2)Pythonの
import pyodbc
dsn_name="td_dev"
user_name="test"
password="test"
db = pyodbc.connect('DSN=' + dsn_name + ';UID='+ user_name +';PWD=' + password + ';')
この文はエラー -
('IM003', '[IM003] Specified driver could not be loaded due to system error 126
: The specified module could not be found. (Teradata, C:\\Program Files (x86)\\T
eradata\\Client\\13.10\\ODBC Driver for Teradata\\Lib\\tdata32.dll). (160) (SQLD
riverConnect)')
の下に私をスロー私のような様々な方法を試してみました。
しかし、どのように私はエクセルVBAを介して接続することができますが、Pythonではありません。
一方、接続文字列は異なります。 Pythonから使用しようとしているのとまったく同じ接続文字列( 'DSN'、' UID'、および 'PWD'だけを指定して)を使ってVBAから接続できますか? –
はい、私はVBA経由でPythonコードで使用されているのと同じ接続文字列で接続することができます。 – anurag
Excel(32ビットまたは64ビット)のコピーの「ビット数」が、使用しているPythonインタプリタの「ビット数」と一致するかどうかを確認します。 –