web-dev-qa-db-ja.com

Pypyodbc:lib 'FreeTDS'を開けません:ファイルが見つかりません ")SQLサーバーに接続しようとしたときのエラー

MacでPypyodbcを使用してSQL Serverに接続しようとすると、次のエラーが発生します。

pypyodbc.DatabaseError: ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'FreeTDS' : file not found")

FreeTDSとunixodbcをインストールしました

brew install unixodbc
brew install freetds

そしてここにダミーデータを含む私の接続文字列があります:

connection_String = "Driver=FreeTDS;Server=123.12.12.12;tds_version=7.2;Database=db_db;Uid=username:pwd=password:port=1433"
19
Mo.

/etc/odbcinst.iniを確認してください。または、/ etc/unixODBC/odbcinst.iniにある可能性があります

接続文字列には、「DRIVER = FreeTDS」のようなものがあり、そのファイルには次のようなエントリが必要です。ドライバーの場所を変更する必要がある場合があります。

[FreeTDS]
Description             = FreeTDS unixODBC Driver
Driver          = /usr/lib64/libtdsodbc.so.0
Setup           = /usr/lib64/libtdsodbc.so.0
UsageCount              = 1
10
KtmDan

まず、ここでの問題であるunixODBCの設定を必要としない pymssql を使用できます。

FreeTDSでunixODBCを構成するには、次のようにします。 http://www.unixodbc.org/doc/FreeTDS.html

FreeTDS、tsqlに付属するツールがあります。これを使用して接続文字列をテストします。それは非常に骨のないツールであり、痛みを伴うものです。 :-/

最後に、StackOverflowの他の問題と同様の質問があります: freeTDSとunixODBCを使用してSQL Serverから文字列を正しく受け入れるようにpyodbcを構成するにはどうすればよいですか?

6
Javier