Re: Alias hstore's ? to ~ so that it works with JDBC - Mailing list pgsql-hackers

From Dave Cramer
Subject Re: Alias hstore's ? to ~ so that it works with JDBC
Date
Msg-id CADK3HHJO0Xv2Wu4DzFmGdOyAshuUtjNk4X=dChZo+M-m1pqY5Q@mail.gmail.com
Whole thread Raw
In response to Re: Alias hstore's ? to ~ so that it works with JDBC  (Seamus Abshere <seamus@abshere.net>)
List pgsql-hackers
Since we already do escape processing much like c that might not be so complex. However I haven't looked at the code, so I could be way off base.

The question I would pose is how palatable is it to use ? In other words is it worth pursuing ?

Dave Cramer

dave.cramer(at)credativ(dot)ca
http://www.credativ.ca


On Wed, Feb 13, 2013 at 12:10 PM, Seamus Abshere <seamus@abshere.net> wrote:
On 2/11/13 1:35 PM, Heikki Linnakangas wrote:
I agree it's pretty dumb that there's currently no such escape. I think JDBC inherited that design mistake from ODBC. Fixing that would be a good idea.

Lance Anderson, Oracle's JDBC spec lead, says [1] we can implement something like:

    SELECT * FROM tbl WHERE data {postgres qm} 'abc'

Thanks to Mark Rotteveel for driving the discussion. [2]


That said, it occurs to me that there's one fairly simple thing we could also do in the backend. At the moment, unlike function and table names, operators cannot be quoted. It would be easy to allow this in the grammar:

select 1 operator("+") 1;

I guess I see 2 simple options and 1 complex option:

a) [simple] operator("+") per Heikki
b) [simple, but not popular] alias ? to ~ per Seamus
c) [complex] {postgres blah} per Lance/Mark

How to decide?

Best,
Seamus


[1] http://mail.openjdk.java.net/pipermail/jdbc-spec-discuss/2013-February/000058.html
[2] http://mail.openjdk.java.net/pipermail/jdbc-spec-discuss/2013-February/date.html#51 (threaded view gets it out of order)

pgsql-hackers by date:

Previous
From: Seamus Abshere
Date:
Subject: Re: Alias hstore's ? to ~ so that it works with JDBC
Next
From: Pavel Stehule
Date:
Subject: Re: JSON Function Bike Shedding