Re: Accepting Object[] as an acceptable input to setObject with Types.ARRAY?
От | Steven Schlansker |
---|---|
Тема | Re: Accepting Object[] as an acceptable input to setObject with Types.ARRAY? |
Дата | |
Msg-id | BBC948C2-9D1F-4651-8D7E-31297217312C@gmail.com обсуждение исходный текст |
Ответ на | Re: Accepting Object[] as an acceptable input to setObject with Types.ARRAY? (Oliver Jowett <oliver@opencloud.com>) |
Список | pgsql-jdbc |
On Jun 3, 2011, at 3:47 PM, Oliver Jowett wrote: > On 4 June 2011 08:04, Steven Schlansker <stevenschlansker@gmail.com> wrote: > >> It looks like adding support for such a fix to the Postgres driver would be extremely easy. In particular looking aroundAbstractJdbc2Statement.java:1732 >> >> case Types.ARRAY: >> if (in instanceof Array) >> setArray(parameterIndex, (Array)in); >> else >> throw new PSQLException(GT.tr("Cannot cast an instance of {0} to type {1}", new Object[]{in.getClass().getName(),"Types.ARRAY"}),PSQLState.INVALID_PARAMETER_TYPE); >> break; >> >> it could check if in is an array type and if so synthesize the Array object necessary. >> >> Does this sound like a reasonable feature request? Did I miss an easier way to do this? It is probably outside of theJDBC spec but it at least has some traction with H2... > > How do you determine the type of the (server-side) array elements? > i.e. what is the typename that setObject would pass to createArrayOf() > when it encountered an Object[]? The patch I put in another branch of this thread does basic type introspection. It handles all the primitive types, wrappedtypes, and a few SQL types (i.e. Date, Time, Timestamp, byte[])
В списке pgsql-jdbc по дате отправления: