Re: Prepared statements considered harmful
От | mark@mark.mielke.cc |
---|---|
Тема | Re: Prepared statements considered harmful |
Дата | |
Msg-id | 20060831152233.GB9491@mark.mielke.cc обсуждение исходный текст |
Ответ на | Re: Prepared statements considered harmful (Csaba Nagy <nagy@ecircle-ag.com>) |
Список | pgsql-hackers |
On Thu, Aug 31, 2006 at 03:36:25PM +0200, Csaba Nagy wrote: > On Thu, 2006-08-31 at 15:19, Peter Eisentraut wrote: > > OK, why don't you work out an example. Let's look at this query: > > SELECT * FROM t1 WHERE a LIKE $1; > > What two plans would you prepare? > if substring($1 from 1 for 1) != '%' then > use plan 1 (see below); > else > use plan 2 (see below); > end if; It would be cool if PostgreSQL did this - but I think it is also true that anybody (or JDBC) who tried to prepare a plan in the cases that are known to cause problems, is making a mistake. While on the 'it would be cool' subject - I think it might be cool if the prepare statement took sample arguments that could be used to prepare the plans with. "Prepare a plan that would work best with these arguments." Then JDBC could prepare both plans for you - if it was smart enough... :-) Cheers, mark -- mark@mielke.cc / markm@ncf.ca / markm@nortel.com __________________________ . . _ ._ . . .__ . . ._. .__ . . . .__ | Neighbourhood Coder |\/| |_| |_| |/ |_ |\/| | |_ | |/ |_ | | | | | | \ | \ |__ . | | .|. |__ |__ | \ |__ | Ottawa, Ontario, Canada One ring to rule them all, one ring to find them, one ring to bring them all and in the darkness bindthem... http://mark.mielke.cc/
В списке pgsql-hackers по дате отправления: