Postgresql JDBC Timestamp problem

Started by Veit Gunaabout 24 years ago1 messagesbugs
Jump to latest
#1Veit Guna
Veit.Guna@xionet.de

Hi.

We're using a Postgresql 7.2 Database through the appropriate jdbc
driver with Java 2.

Selecting Data, updating etc. works fine except for the getTimestamp()
method on the ResultSet. It delivers only a 3 digit fraction, although
there's a 6 digit fraction stored in the db (timestamptz column, filled
by now()). The following sequence will consquential fail:

- select timestamp as ts, data from table
- update table set data = 'new data' where timestamp = ts

using PreparedStatements.

We took a look at the JDBC2 implementation of this method. It says
something about java could not store more than a 3 digit fraction.
That's not entirely true. We used the HEAD version of the jdbc driver
from your repository to create a "workaround" that could fix this
problem. Please take a look at the attached ResultSet patch which will
allow a 6 digit fraction. Take this patch only as an idea how the
problem could be solved. It works so far...

Thank you for your patience...

ps.: if this fix will be published, please mention that Stefan Jantzon
has developed this fix mainly 8)...
--
"...$HOME is where cd takes you..."

Attachments:

ResultSet_Timestamp.patchtext/plain; name=ResultSet_Timestamp.patchDownload+25-30