Thanks Michael.
A couple of typos in what you sent. The uppercase MM for the minuets
should be lowercase mm.
Unfortenitly this does not work for me. When I select from the database
with psql I see times like this:
11:30:10.74-04 or
11:30:10-04
I do not know where the -04 is coming from or what it means.
What I want to do is select a timestamp field from one table and
use it in a select from another table. The times in the two tables
are exactly the same. But even with the fix the second select fails
to get the record.
Ken
Michael Stephenson wrote:
>
> > Was there a rummer that a patch was coming out that fixed a bug with
> > the datetime field? I'm getting times with dashes in the milliseconds
> > (i.e.: 12:01:00.10-04 or something like that).
>
> I placed a patch on the mailing list a few days ago, which fixes the
> problem, hope this helps.
>
> Michael Stephenson
>
> *** src/interfaces/jdbc/org/postgresql/jdbc2/ResultSet.java Fri May 12
> 20:54:22 2000
> --- src/interfaces/jdbc/org/postgresql/jdbc2/ResultSetPatch.java
> Mon Sep 25 15:36:46 2000
> ***************
> *** 439,445 ****
> if(s==null)
> return null;
>
> ! SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd
> HH:mm:sszzz");
>
> try {
> return new Timestamp(df.parse(s).getTime());
> --- 439,456 ----
> if(s==null)
> return null;
>
> ! SimpleDateFormat df = null;
> ! if (s.length()>21 && s.indexOf('.') != -1) {
> ! df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSzzz");
> ! } else if (s.length()>19 && s.indexOf('.') == -1) {
> ! df = new SimpleDateFormat("yyyy-MM-dd HH:MM:sszzz");
> ! } else if (s.length()>19 && s.indexOf('.') != -1) {
> ! df = new SimpleDateFormat("yyyy-MM-dd HH:MM:ss.SS");
> ! } else if (s.length()>10 && s.length()<=18) {
> ! df = new SimpleDateFormat("yyyy-MM-dd HH:MM:ss");
> ! } else {
> ! df = new SimpleDateFormat("yyyy-MM-dd");
> ! }
>
> try {
> return new Timestamp(df.parse(s).getTime());