From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "James (Ke) Wang" <james(dot)wang(at)sas(dot)com> |
Cc: | "pgsql-odbc(at)postgresql(dot)org" <pgsql-odbc(at)postgresql(dot)org> |
Subject: | Re: Bug? The precision from the ODBC API is not same to psql |
Date: | 2021-08-30 14:02:25 |
Message-ID: | 1348704.1630332145@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-odbc |
"James (Ke) Wang" <james(dot)wang(at)sas(dot)com> writes:
> * PostgreSQL ODBC driver version: 13.01.00
> * PostgreSQL database version: PostgreSQL 10.17 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44), 64-bit
> * any error messages you saw on the screen: No. However the result from ODBC API is not expected, we expect the ODBC driver returns the result same to Psql utility. Please see the below logs.
You can get the same result in psql, if you set extra_float_digits
correctly:
regression=# select 51.3::float8;
float8
--------
51.3
(1 row)
regression=# set extra_float_digits = 2;
SET
regression=# select 51.3::float8;
float8
--------------------
51.299999999999997
(1 row)
So presumably either ODBC or something in your application is
setting that parameter.
FWIW, PG version 12 and newer won't do that; they use a newer
floating-point printing algorithm with less inclination to
produce silly-looking results.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Andreas Beier | 2021-09-08 12:34:28 | Excel ODBC query loosing parameter when returning the query result directly to a pivot table. |
Previous Message | James (Ke) Wang | 2021-08-30 07:19:56 | The precision from the ODBC API is not same to psql |