Mercurial > hg > monetdb-java
diff src/main/java/org/monetdb/jdbc/MonetConnection.java @ 736:f317b37bad30
In MonetCallableStatement constructor skip calling removeEscapes() when the connected server supports ODBC/JDBC escape sequence syntax.
author | Martin van Dinther <martin.van.dinther@monetdbsolutions.com> |
---|---|
date | Thu, 16 Feb 2023 20:35:09 +0100 (2023-02-16) |
parents | 9a243dce3b15 |
children | 1566dbfaa13b |
line wrap: on
line diff
--- a/src/main/java/org/monetdb/jdbc/MonetConnection.java +++ b/src/main/java/org/monetdb/jdbc/MonetConnection.java @@ -2055,6 +2055,25 @@ public class MonetConnection return databaseMinorVersion; } + /** + * Get whether the MonetDB SQL parser supports ODBC/JDBC escape sequence syntax. + * See also: https://docs.oracle.com/javadb/10.6.2.1/ref/rrefjdbc1020262.html + * It does when the server version is 11.46 or higher. + * This method is called from: MonetDatabaseMetaData and MonetCallableStatement. + * + * @return true when the server supports ODBC/JDBC escape sequence syntax else false. + */ + boolean supportsEscapeSequenceSyntax() { + try { + if ((getDatabaseMajorVersion() == 11) && (getDatabaseMinorVersion() <= 45)) + // older servers do not support it + return false; + } catch (SQLException e) { + return false; + } + return true; + } + // Internal cache for determining if system table sys.privilege_codes (new as of Jul2017 release) exists on connected server private boolean queriedPrivilege_codesTable = false;