I was doing some testing Firebird against wip/6.0 and I tripped over the fact the list of keywords in AnsiSqlKeywords.java (introduced for https://hibernate.atlassian.net/browse/HHH-9768) is incomplete.

For example, the keyword POSITION is missing from the list, while it is listed in SQL:2003 <reserved word>, on the other hand ADD is in the list, which is only listed as non-reserved in <non-reserved word>. I also notice that most - if not all - other function names are missing.

Firebird is particular finicky about keywords. I see two approaches:

1) I add the difference between the current list in AnsiSqlKeywords + DatabaseMetaData.getKeywords() (which only returns those not reserved in SQL:2003) and Firebird's actual keywords explicitly in the dialect

2) I update the list in AnsiSqlKeywords to contain all reserved words from SQL:2003 (+ retain any additional keywords currently in the list)

This last option would have compatibility consequences (as additional keywords may get quoted, which could change case-sensitivity for some databases), so that may not be desirable.

Your thoughts on this?

Mark
--
Mark Rotteveel
_______________________________________________
hibernate-dev mailing list -- hibernate-dev@lists.jboss.org
To unsubscribe send an email to hibernate-dev-le...@lists.jboss.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to