2017-03-03 3 views
0

OS Windows、Python 3.4、pyodbc、SQL Serverドライバでは、SQL Decimal(18,6)をpython decimal.Decimalに変換します。FreeTDSはfloatとしてSQL Decimalを返します

Linux、Python 3.4、pyodbc、FreeTDS 0.91-6ドライバでは、同じ列がpython float(およびfloat roundingに関連するすべての問題)に変換されます。

FreeTDSがSQL数値/小数点をデフォルトのpythonのdecimal.Decimalに変換するように強制する方法はありますか?それがここに記載されているよう

答えて

0

は、実際に私は、ODBC接続文字列にTDS_Version = 8.0を指定することで、回避策が見つかりました: FreeTDS bug back from 2010

+2

バージョン8.0は、単にバージョン7.1の別名であるTDS注、および8.0を指定し、「原因は避けるべきです将来の互換性に関する懸念への対応」(詳細はこちら(http://www.freetds.org/userguide/choosingtdsprotocol.htm))。 –

関連する問題