Re: [HACKERS] JPA + enum == Exception - Mailing list pgsql-jdbc

From Kris Jurka
Subject Re: [HACKERS] JPA + enum == Exception
Date
Msg-id alpine.BSO.2.00.1302081124290.16163@leary.csoft.net
Whole thread Raw
In response to Re: [HACKERS] JPA + enum == Exception  (Tom Dunstan <tom@tomd.cc>)
Responses Re: [HACKERS] JPA + enum == Exception
List pgsql-jdbc

On Fri, 8 Feb 2013, Tom Dunstan wrote:

> On 8 February 2013 15:25, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> > AFAIK this is just business as usual with JDBC: setString() implies that
> > the parameter is of a string type.  It'll fall over if the type actually
> > required is anything but a string.  (I'm no Java expert, but I seem to
> > recall that using setObject instead is the standard workaround.)
> >
>
> Yes, you can use setObject(1, "enumval", Types.OTHER). I was hoping
> that setString might work, as mapping java enum values to strings in
> the database is a very common ORM technique that is built into
> basically all major ORMs including all that support the JPA standard,
> and it leads to people using varchars instead of typesafe enums in
> their dbs.

The other workaround is to use the url parameter stringtype=unspecified to
have setString always bind to unknown instead of varchar, which then
shouldn't require any code changes.

Kris Jurka



pgsql-jdbc by date:

Previous
From: Dave Cramer
Date:
Subject: Re: Publish artifacts to Maven central
Next
From: Stephen Nelson
Date:
Subject: Re: Publish artifacts to Maven central