Re: Re: [Oledb-dev] double precision error with pg linux server, but not with windows pg server
От | Tom Lane |
---|---|
Тема | Re: Re: [Oledb-dev] double precision error with pg linux server, but not with windows pg server |
Дата | |
Msg-id | 18652.1179611062@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: Re: [Oledb-dev] double precision error with pg linux server, but not with windows pg server (Shachar Shemesh <shachar@shemesh.biz>) |
Ответы |
Re: Re: [Oledb-dev] double precision error with pg linux
server, but not with windows pg server
|
Список | pgsql-hackers |
Shachar Shemesh <shachar@shemesh.biz> writes: > Heikki Linnakangas wrote: >> Is it not possible to use text >> format in OLE DB, for floating points? > It is impossible to use text format for just floating point. I often > don't know in advance what type the result is going to be. Sure it's "possible". Send a Parse command, ask for Describe Statement output, then specify the column formats as desired in Bind. Now this does imply an extra server round trip, which might be annoying if your client code doesn't have another reason to need to peek at Describe output. An idea that's been in the back of my mind for awhile is to provide some way to let the client say things like "I want float and timestamp results in text and everything else in binary", so that one setup step at the start of the session avoids the need for the extra round trips. Haven't got a detailed proposal at the moment though. > What if I send a patch that sends a 64bit float as 128bit number, > containing two integers, one for mantissa and one for exponent. This > format is guaranteed to never lose precision, but is wire compatible > across platforms. Would that be considered a good solution? No, not unless you can make the case why this handles NaNs and denormalized numbers compatibly across platforms... regards, tom lane
В списке pgsql-hackers по дате отправления: