[ 
https://issues.apache.org/jira/browse/OPENJPA-84?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mark Struberg resolved OPENJPA-84.
----------------------------------
    Fix Version/s: 3.1.3
         Assignee: Mark Struberg
       Resolution: Fixed

> Escape sql reserved words in column names
> -----------------------------------------
>
>                 Key: OPENJPA-84
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-84
>             Project: OpenJPA
>          Issue Type: Improvement
>          Components: sql
>            Reporter: Roger Keays
>            Assignee: Mark Struberg
>            Priority: Major
>             Fix For: 3.1.3
>
>
> OpenJPA does not escape reserved words in SQL queries when they are used as 
> column names. To escape a reserved name you just put it in quotes:
> INSERT INTO FB_PRIVILEGES (comment, inheritable, level, role, type, username, 
> item_uuid) ...
> on oracle, becomes 
> INSERT INTO FB_PRIVILEGES ("comment", inheritable, "level", role, "type", 
> username, item_uuid) ...
> Looking at the code in DBDictionary, it appears that the escaping is done for 
> table and sequence names by appending a numeral to the name. There isn't 
> really any good reason to do this instead of quoting the identifier.
> table.name identifiers would have to be escaped as "table"."name" if both 
> table and name were reserved words.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to