3

pyodbc を使用して sqlite データベースに接続する方法がわかりません。DSN をセットアップしており、isql 経由で問題なく接続できます。

isql -v TEST

魅力のように機能しますが、

import pyodbc
pyodbc.connect('DSN=TEST')

次のエラー メッセージが表示されます。

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

また、 https: //code.google.com/p/pyodbc/wiki/GettingStartedの例にある接続文字列の順列を大量に試しましたが、役に立ちませんでした。

pyodbc.dataSources()

libsqlite3odbc.soへのパスを保持する値で接続しようとしているdsnをリストします

明らかな何かが欠けていると思いますが、何がわかりません...

編集: unixODBC 2.3.0、python 2.7.1、sqliteodbc 0.88、および pyodbc 2.1.8 の使用 編集: pyodbc を使用する理由は、Windows および MS Access への移植性のためです。

4

1 に答える 1

0

ドライバ マネージャに何が渡されているかを確認するには、ODBC トレースをオンにして、odbcinst,ini ファイルに追加します。

[ODBC]
Trace = Yes
TraceFile = /tmp/sql.log

その後、アプリを再度実行し、SQLConnect または SQLDriverConnect 呼び出しに何が渡されているかを確認します。

于 2011-06-10T22:04:42.407 に答える