From: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> |
---|---|
To: | "w(dot)winter" <w(dot)winter(at)logitags(dot)com> |
Cc: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Re: precision of numeric type |
Date: | 2002-10-27 15:36:57 |
Message-ID: | 200210271536.g9RFavF00678@candle.pha.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
I am not sure. Others may have a better answer, but the problem may be
due to comparing a non-exact type like numberic to an inexact type like
double. You may find 7.3beta has this fixed because we did work on
improving such casts in that release.
---------------------------------------------------------------------------
w.winter wrote:
> Hi,
>
> on testing our auto-configuration persistence framework ACP against
> PostgreSQL we found the following problem:
>
> I have a table with a column of type numeric(48,10). The PostgreSQL docs
> say: "The type numeric can store numbers of practically unlimited size and
> precision, while being able to store all numbers and carry out all
> calculations exactly."
>
> I store the Double value 1212121234.5634349876 with a
> PreparedStatement.setDouble()
>
> I make a PreparedStatement with SELECT FROM TESTTABLE WHERE TESTCOLUMN=?
> and set the Parameter with
> stmt.setDouble(1, new Double(1212121234.56343498));
>
> The row will be found!
>
> The same happens when I do
> stmt.setString(1, String.valueOf(new Double(1212121234.56343498)));
>
> and if I do
> stmt.setDouble(1, new Double(1212121234.5634349));
> an error is produced : Unable to identify an operator '=' for types
> 'numeric' and 'double precision'
>
> it seems to me, the behaviour with numeric datatypes is not consistent.
>
> Wolfgang
>
> ___________________
> Dr. Wolfgang Winter
> LogiTags Systems
> www.logitags.com
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
> (send "unregister YourEmailAddressHere" to majordomo(at)postgresql(dot)org)
>
--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
From | Date | Subject | |
---|---|---|---|
Next Message | snpe | 2002-10-27 16:49:02 | Re: precision of numeric type |
Previous Message | w.winter | 2002-10-27 09:59:14 | Supplement |