Date formats/time zones

Поиск
Список
Период
Сортировка
От elliotl@start-global.com
Тема Date formats/time zones
Дата
Msg-id OF1F488329.CEF3038C-ON80256C1C.00535FA5@start-global.com
обсуждение исходный текст
Список pgsql-jdbc
Hello. I am using the JDBC2.0 driver (pgjdbc2.jar) along with PostgreSQL
7.2.1 in a Java web app running on Tomcat 4.0.4. I've also imported Sun's
rowset.jar file so I can use the CachedRowSet object. I use both the
ResultSet and CachedRowSet objects in my code, and assumed their functions
to be identical. However, I have found a small discrepancy, and while I
have dealt with the problem, I'm still curous as to its origins.
The issue is that I'm implementing time zone support, and was quite pleased
to find that adding a date to a query in the form '21 Aug 2002 00:44:33
BST' was automatically translated to GMT before adding it to the database.
However, getting it out has proved more tricky. I've long since abandoned
using rs.getDate() to retrieve dates since it doesn't retireve time
information (which seems like a major oversight to me - though admittedly
not on your part!). Now I use getString and parse the date myself. Here's
where it gets strange. When I use rs.getString, I get a string like:
"2002-08-20 23:07:34+00". When I use the CachedRowSet object's getString
method (which is JDBC2.0) I get: "2002-08-21 00:07:34.0", the difference
being (aside from the . instead of +) is that the second one has already
been corrected for British Summer Time (BST)!. I've gotten around it by
only providing my own time correction only if a "+" is found, but I would
very much appreciate some kind of explanation for why this is happening!

Thanks for your time!

-Elliot Long


В списке pgsql-jdbc по дате отправления:

Предыдущее
От: Chad
Дата:
Сообщение: Inquiry From Form [pgsql]
Следующее
От: Marie-Paule Labaied
Дата:
Сообщение: problem JDBC driver