Re: Feasibility of supporting bind params for all command types

From: "Greg Sabino Mullane" <greg(at)turnstep(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Feasibility of supporting bind params for all command types
Date: 2014-10-06 11:12:17
Message-ID: 87b663faa5b362fdd37320a176e5afe9@biglumber.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160

Tom Lane said:
...
> Craig Ringer <craig(at)2ndquadrant(dot)com> writes:
>> While looking at an unrelated issue in PgJDBC I noticed that it's
>> difficult for users and the driver to tell in advance if a given
>> statement will support bind parameters.
>
> It's not that hard ;-) ... if it ain't SELECT/INSERT/UPDATE/DELETE,
> it won't accept parameters.

Yes, it is as easy as that. That's exactly what DBD::Pg does - looks
at the first word of the statement. Although you also need to
add VALUES and WITH to that list. :)

>> As a result, some code that worked with PgJDBC using the v2 protocol
>> will fail with the v3 protocol, e.g.
>>
>> It'd be nice not to force users to do their own escaping of literals in
>> non-plannable statements. Before embarking on anything like this I
>> thought I'd check and see if anyone's looked into supporting bind
>> parameters in utility statements, or if not, if anyone has any ideas
>> about the feasibility of adding such support.

I don't think that's a hill you want to conquer. Let that code
relying on v2 behavior get rewritten, or make the driver smart
enough to handle it automagically the best it can.

- --
Greg Sabino Mullane greg(at)turnstep(dot)com
End Point Corporation http://www.endpoint.com/
PGP Key: 0x14964AC8 201410060710
http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8
-----BEGIN PGP SIGNATURE-----

iEYEAREDAAYFAlQyeNIACgkQvJuQZxSWSshYewCgg/EmgTbPp5KnfUpYfga8nsee
GVMAniXC+FxHFsiuT07idP8Tw70gCoBe
=a20X
-----END PGP SIGNATURE-----

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2014-10-06 11:19:39 Re: WAL format and API changes (9.5)
Previous Message Andres Freund 2014-10-06 11:01:32 Re: pg_receivexlog and replication slots