Re: Prepared statement not using index

Поиск
Список
Период
Сортировка
От Dave Cramer
Тема Re: Prepared statement not using index
Дата
Msg-id 8800F410-0A1C-4AD4-96F0-B3193638056F@fastcrypt.com
обсуждение исходный текст
Ответ на Prepared statement not using index  (Guido Neitzer <guido.neitzer@pharmaline.de>)
Ответы Re: Prepared statement not using index
Re: Prepared statement not using index
Список pgsql-performance
The difference between the 7.4 driver and the 8.0.3 driver is the
8.0.3 driver is using server side prepared statements and binding the
parameter to the type in setXXX(n,val).

The 7.4 driver just replaces the ? with the value and doesn't use
server side prepared statements.

Dave


On 1-Sep-05, at 7:09 PM, Guido Neitzer wrote:

> Hi.
>
> I have an interesting problem with the JDBC drivers. When I use a
> select like this:
>
> "SELECT t0.aktiv, t0.id, t0.ist_teilnehmer, t0.nachname, t0.plz,
> t0.vorname FROM public.dga_dienstleister t0 WHERE t0.plz
> like ?::varchar(256) ESCAPE '|'" withBindings: 1:"53111"(plz)>
>
> the existing index on the plz column is not used.
>
> When I the same select with a concrete value, the index IS used.
>
> I use PostgreSQL 8.0.3 on Mac OS X and the JDBC driver 8.0-312 JDBC 3.
>
> After a lot of other things, I tried using a 7.4 driver and with
> this, the index is used in both cases.
>
> Why can this happen? Is there a setting I might have not seen?
> Something I do wrong?
>
> cug
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 5: don't forget to increase your free space map settings
>
>


В списке pgsql-performance по дате отправления:

Предыдущее
От: Richard Huxton
Дата:
Сообщение: Re: Slow update
Следующее
От: Guido Neitzer
Дата:
Сообщение: Re: Prepared statement not using index