You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Andrew DeMaria (JIRA)" <ji...@apache.org> on 2016/07/28 16:23:20 UTC
[jira] [Created] (CONFIGURATION-637) Oracle invalid idenitifer when
using a resevered keyword for column name
Andrew DeMaria created CONFIGURATION-637:
--------------------------------------------
Summary: Oracle invalid idenitifer when using a resevered keyword for column name
Key: CONFIGURATION-637
URL: https://issues.apache.org/jira/browse/CONFIGURATION-637
Project: Commons Configuration
Issue Type: Bug
Affects Versions: 2.0
Environment: Oracle, Java 1.8
Reporter: Andrew DeMaria
Priority: Minor
I have the following create table for oracle to store configs. Notice that the "scope" column name is properly escaped:
{noformat}
create table PROPERTY_CONTROL (
"scope" VARCHAR2(32),
"key" VARCHAR2(128),
"value" VARCHAR2(512),
CONSTRAINT property_control_pk PRIMARY KEY ("scope", "key")
);
{noformat}
However, this causes the following stack trace (slightly modified for sensitive class names):
{noformat}
java.sql.SQLSyntaxErrorException: ORA-00904: "SCOPE": invalid identifier
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:457)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:400)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:926)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:476)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:200)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:543)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:238)
at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:1244)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1492)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1710)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:4372)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:4453)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:6270)
at com.zaxxer.hikari.proxy.PreparedStatementProxy.executeQuery(PreparedStatementProxy.java:52)
at com.zaxxer.hikari.proxy.HikariPreparedStatementProxy.executeQuery(HikariPreparedStatementProxy.java)
at org.apache.commons.configuration2.DatabaseConfiguration$JdbcOperation.openResultSet(DatabaseConfiguration.java:847)
at org.apache.commons.configuration2.DatabaseConfiguration$4.performOperation(DatabaseConfiguration.java:487)
at org.apache.commons.configuration2.DatabaseConfiguration$4.performOperation(DatabaseConfiguration.java:483)
at org.apache.commons.configuration2.DatabaseConfiguration$JdbcOperation.execute(DatabaseConfiguration.java:742)
at org.apache.commons.configuration2.DatabaseConfiguration.containsKeyInternal(DatabaseConfiguration.java:494)
at org.apache.commons.configuration2.AbstractConfiguration.containsKey(AbstractConfiguration.java:1086)
at org.apache.commons.configuration2.CompositeConfiguration.containsKeyInternal(CompositeConfiguration.java:374)
at org.apache.commons.configuration2.AbstractConfiguration.containsKey(AbstractConfiguration.java:1086)
{noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)