Re: IN clauses via setObject(Collection) [Was: Re: Prepared - Mailing list pgsql-jdbc

From Fernando Nasser
Subject Re: IN clauses via setObject(Collection) [Was: Re: Prepared
Date
Msg-id 3F1D351A.8070807@redhat.com
Whole thread Raw
In response to Re: Prepared Statements  (Dima Tkach <dmitry@openratings.com>)
List pgsql-jdbc
Paul Thomas wrote:
>
> On 21/07/2003 18:51 Fernando Nasser wrote:
>
>> Also, we may limit this behavior with Collections to the IN clause
>> only.  Where else could we need lists to replace the '?' ?
>
>
> Nowhere. Not even with an IN clause. If the programmer needs
> IN(1,2,3,4,5) then he must write IN(?,?,?,?,?) in his prepare string.
> That's the way JDBC works. Period. Acceptance of any other behaviour is
> un-professional and against the standards. As you said yourself, neither
> Oracle nor DB2 support this behavior. Neither should PostgreSQL.
>

Well, I was just informed that the 7.4 backend supports an IN list which
is filled with a PostgreSQL array.  As the syntax requires the
parenthesis to be in place (it only fills the list itself) there is no
ambiguity.

Its support is limited on 7.4 (the optimized is not aware of it and
generates a crappy plan) but one may consider improving it for 7.5.


--
Fernando Nasser
Red Hat Canada Ltd.                     E-Mail:  fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario   M4P 2C9


pgsql-jdbc by date:

Previous
From: Fernando Nasser
Date:
Subject: Re: the IN clause saga
Next
From: Felipe Schnack
Date:
Subject: Re: IN clauses via setObject(Collection) [Was: Re: Prepared