How can I fix this error : non supported SQL92? How can I fix this error : non supported SQL92? oracle oracle

How can I fix this error : non supported SQL92?


It's all about { and }. You do not use them. Ojdbc won't parse it. Use different token instead of them.


This is probably due to the JDBC Escape syntax (see section 13.4 of the JDBC 4.1 specification). A JDBC driver should handle escapes between { and } and translate the escaped standard function, outer join etc to the database specific format.

As far as I know a driver should only parse the escapes if it occurs in the statement body itself, and not when it is inside text in the statement (as it is in your example). So to me this looks like a bug in the JDBC escape processing of your driver.


You may be able to get around this by following the answer of another StackOverflow post:Create Java on Oracle database with JDBC

A summary is:

CallableStatement stat = conn.prepareCall(sql);stat.setEscapeProcessing(false);stat.execute();

The middle line is what you seem to be missing. I couldn't figure it out until I found that post.