From: | "w(dot)winter" <w(dot)winter(at)logitags(dot)com> |
---|---|
To: | <pgsql-jdbc(at)postgresql(dot)org> |
Subject: | precision of numeric type |
Date: | 2002-10-27 09:54:40 |
Message-ID: | 003001c27d9e$e53fe5b0$667ba8c0@panzerknacker |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
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
From | Date | Subject | |
---|---|---|---|
Next Message | w.winter | 2002-10-27 09:59:14 | Supplement |
Previous Message | w.winter | 2002-10-27 09:39:54 | DatabaseMetaData.getTables() problem |