[jsr-221-eg] SQL 2016 MATCH RECOGNIZE JDBC parameter Marker / Escape Characters

Mark Rotteveel mark at lawinegevaar.nl
Tue Oct 9 16:41:07 UTC 2018


On 9-10-2018 18:11, Douglas Surber wrote:
> Oracle raised this issue before we added ‘{\ .. \}’ and tried our best to get the EG to agree on something, anything. We proposed ‘{\ . . . \}’ but were abundantly clear that we would accept anything that the EG would agree to. Unfortunately the EG did not come to any agreement.

I just checked my records, and I didn't join the EG until 2015; I 
thought it was earlier.

> Oracle Database added MATCH RECOGNIZE to Oracle SQL and Oracle Database JDBC had to do something. When the EG did not agree to anything we went with what we thought was the best solution.
> 
> We did our best to include the wider community when this issue first arose in 2013. The community did not act so Oracle Database JDBC did what we had to to support Oracle Database. I’m sorry that things turned out that way. But now that Oracle Database JDBC has been supporting this syntax for five years, I am going to push to make the established syntax the standard. I absolutely agree that this is not the best way to do things but we tried our best to get some kind of agreement first.

You're right, 
http://mail.openjdk.java.net/pipermail/jdbc-spec-discuss/2013-October/000066.html 


I replied to it, but I see now I only replied to Lance directly and not 
to the list (probably as my response was a little sarcastic/annoyed for 
similar reasons as my previous mail).

I see that that proposal contains some parts not explicitly mentioned in 
the current proposal (eg escaping \ within the escaped text, see below). 
Is that still the intent? Or did this change?

--------------------
  {\...\}

expands to the characters between '{\' and '\}'. Doubled backslashes '\' 
expand to a single backslash.

  {\?\}  expands to ?
  {\{fn sysdate()}\} expands to {fn sysdate()} and is not further expanded
  {\}\} expands to }
  {\\\}\} expands to \}

------------------

I still think using {`..`} would be more readable than having a lot of 
backslashes.

Mark
-- 
Mark Rotteveel


More information about the jdbc-spec-discuss mailing list