Обсуждение: JDBC and Timestamps

Поиск
Список
Период
Сортировка

JDBC and Timestamps

От
Chris Ryan
Дата:
I'm working on a project where I update/insert/select records through
JDBC and I'm noticing problems with the timestamp fields. The JDBC
driver when writing a Timestamp value to postgres is passing the value
to the backend as a String in the following format "yyyy-mm-dd
hh:mm:ss.fffffffff" <-- the last part .fffffffff is nanosecs. When
Postgres reads this is things it is millisecs so converts it and appends
the timezone. Now when the JDBC driver reads the value back in it is
trying to do a date conversion from a string using the format
"yyyy-mm-dd hh:mm:sszzz" which has timezone but no millisecs. The
different formats of course cause exceptions to be generated. I tried
using the setLenient(true) but this didn't make any difference.

Chris Ryan



RE: JDBC and Timestamps

От
Peter Mount
Дата:
This should already be fixed in cvs.

Peter

--
Peter Mount
Enterprise Support
Maidstone Borough Council
Any views stated are my own, and not those of Maidstone Borough Council


-----Original Message-----
From: Chris Ryan [mailto:chris@greatbridge.com]
Sent: Saturday, August 05, 2000 1:26 PM
To: pgsql-interfaces@postgresql.org
Subject: [INTERFACES] JDBC and Timestamps


I'm working on a project where I update/insert/select records through
JDBC and I'm noticing problems with the timestamp fields. The JDBC
driver when writing a Timestamp value to postgres is passing the value
to the backend as a String in the following format "yyyy-mm-dd
hh:mm:ss.fffffffff" <-- the last part .fffffffff is nanosecs. When
Postgres reads this is things it is millisecs so converts it and appends
the timezone. Now when the JDBC driver reads the value back in it is
trying to do a date conversion from a string using the format
"yyyy-mm-dd hh:mm:sszzz" which has timezone but no millisecs. The
different formats of course cause exceptions to be generated. I tried
using the setLenient(true) but this didn't make any difference.

Chris Ryan


Re: JDBC and Timestamps

От
Thomas Lockhart
Дата:
> ... I'm noticing problems with the timestamp fields. The JDBC
> driver when writing a Timestamp value to postgres is passing the value
> to the backend as a String in the following format "yyyy-mm-dd
> hh:mm:ss.fffffffff" <-- the last part .fffffffff is nanosecs.

Do you actually need nanosecond (or sub-microsecond) resolution? At the
moment, Postgres rounds internal values *and* truncates printed results
to avoid accumulating internal roundoff errors. But I did that pretty
conservatively, rather than actually testing to see if it could carry
more precision.

If you want to test with more precision, we could try some variations...
                 - Thomas


removal from mailing list

От
"Geoff Healey"
Дата:
Dear all,

Can some one let me know how I can be removed from this mailing list?

Regards

Geoff
----- Original Message ----- 
From: Chris Ryan <chris@greatbridge.com>
To: <pgsql-interfaces@postgresql.org>
Sent: Saturday, August 05, 2000 10:26 PM
Subject: [INTERFACES] JDBC and Timestamps


> I'm working on a project where I update/insert/select records through
> JDBC and I'm noticing problems with the timestamp fields. The JDBC
> driver when writing a Timestamp value to postgres is passing the value
> to the backend as a String in the following format "yyyy-mm-dd
> hh:mm:ss.fffffffff" <-- the last part .fffffffff is nanosecs. When
> Postgres reads this is things it is millisecs so converts it and appends
> the timezone. Now when the JDBC driver reads the value back in it is
> trying to do a date conversion from a string using the format
> "yyyy-mm-dd hh:mm:sszzz" which has timezone but no millisecs. The
> different formats of course cause exceptions to be generated. I tried
> using the setLenient(true) but this didn't make any difference.
> 
> Chris Ryan
>