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"
/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
まず、ここでの問題であるunixODBCの設定を必要としない pymssql を使用できます。
FreeTDSでunixODBCを構成するには、次のようにします。 http://www.unixodbc.org/doc/FreeTDS.html
FreeTDS、tsqlに付属するツールがあります。これを使用して接続文字列をテストします。それは非常に骨のないツールであり、痛みを伴うものです。 :-/
最後に、StackOverflowの他の問題と同様の質問があります: freeTDSとunixODBCを使用してSQL Serverから文字列を正しく受け入れるようにpyodbcを構成するにはどうすればよいですか?