Re: Mapping Java BigDecimal - Mailing list pgsql-jdbc

From Greg Stark
Subject Re: Mapping Java BigDecimal
Date
Msg-id 407d949e1001180209v39e46a88v6d5a0e5a181a5d84@mail.gmail.com
Whole thread Raw
In response to Re: Mapping Java BigDecimal  (Craig Ringer <craig@postnewspapers.com.au>)
Responses Re: Mapping Java BigDecimal  (Craig Ringer <craig@postnewspapers.com.au>)
List pgsql-jdbc
On Mon, Jan 18, 2010 at 8:30 AM, Craig Ringer
<craig@postnewspapers.com.au> wrote:
> I don't know whether Oracle or Pg are more "correct" here - you're
> giving Pg "3" so arguably it shouldn't assume "3.00" and should in fact
> return "3". OTOH, you've told it what the scale and precision are for
> the column, and inputs to the column should be presumed to fit that
> scale and precision.
>

It doesn't really work that way. Whether you store "3" or "3.00" or
"3.0000" you're storing the same value in the numeric field.

The precision and scale you specify for Postgres is just the maximum
as well. But it's also used for the default formatting when converting
to text. If you retrieved the numeric in binary format it would be the
same regardless of the parameters.

In no case does postgres remember the precision of the input text. If
you don't specify a precision on the column it just prints as many as
necessar. That sounds like what you're looking for.

--
greg

pgsql-jdbc by date:

Previous
From: Vaibhav Patil
Date:
Subject: Re: COPY using Hibernate
Next
From: dmp
Date:
Subject: [Fwd: Re: Mapping Java BigDecimal]