Re: JDBC problem with dates and ANYELEMENT type - Mailing list pgsql-jdbc

From Kris Jurka
Subject Re: JDBC problem with dates and ANYELEMENT type
Date
Msg-id 49F21F1B.7010803@ejurka.com
Whole thread Raw
In response to Re: JDBC problem with dates and ANYELEMENT type  ("Peter" <peter@greatnowhere.com>)
Responses Re: JDBC problem with dates and ANYELEMENT type
List pgsql-jdbc
Peter wrote:
>>> Any suggestions how to work around this so we can still use
>>> ANYELEMENT and pass in DATE?
>
>> You can put a cast into the query itself "SELECT ?::date".
>
> Nah... that's no good. The same query string is used for many
> different types in my app - such approach would require me to parse
> the SQL string and append cast to date when argument is
> java.sql.Date.  I'll leave this as last-ditch approach.

The other way of providing explicit type information is to create an
object that extends PGobject.  Something like:

import java.util.Date;
import java.text.SimpleDateFormat;
import org.postgresql.util.PGobject;

class MyDateWrapper extends PGobject {

     public MyDateWrapper(java.util.Date d) {
         setType("date");
    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
         setValue(df.format(d));
     }
}

Then call PreparedStatement.setObject with an instance of MyDateWrapper.

Kris Jurka


pgsql-jdbc by date:

Previous
From: Thomas Kellerer
Date:
Subject: Re: Here's a fix to AbstractJdbc3Statement.getGeneratedKeys
Next
From: Kris Jurka
Date:
Subject: Re: Here's a fix to AbstractJdbc3Statement.getGeneratedKeys