Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "EclipseLink/Development/JPA 2.0/undelimited identifiers"

(Open Issues)
Line 30: Line 30:
 
** DatabasePlatform is not available at processing time, so we may need to provide a eclipselink.sql.delimiter property
 
** DatabasePlatform is not available at processing time, so we may need to provide a eclipselink.sql.delimiter property
 
* Do we want any special handling if delimited-identifiers is specified in the orm.xml and also in an identifier
 
* Do we want any special handling if delimited-identifiers is specified in the orm.xml and also in an identifier
 +
* When we use Delimited Identifiers, rowsets returned from the database to not include the delimiters.  This will cause issues anywhere we try to look up values by Name (Native Queries, Max Results)

Revision as of 15:52, 3 July 2009

Undelimited Identifiers

JPA 2.0 Root | Enhancement Request

Issue Summary

The specification has added support to always treat meta data identifiers as if they are "quoted" preserving case and allowing reserved words to be used.


See JPA 2.0 ED section 2.13 for details.

General Solution

Under Construction

At the moment, we already handle delimiters when they are specified in quoted field names. We simply need to update to handle when delimited-identifiers is specified in orm.xml.

The first step is to add parsing logic to our orm.xml parser to get the data.

When the parsing is done, we will update our Field and Column name construction code to use the data.

Work Required

  1. Develop tests
    approx 1 day
  2. Implement API
    approx 3 days

Open Issues

  • Although double quote is usable in most cases, there are some cases where other delimiters would be useful. (e.g. In the default mode, MySQL requires a single quote be used for delimiters and will throw an error is a double quote is used as a delimiter for a table name)
    • DatabasePlatform is not available at processing time, so we may need to provide a eclipselink.sql.delimiter property
  • Do we want any special handling if delimited-identifiers is specified in the orm.xml and also in an identifier
  • When we use Delimited Identifiers, rowsets returned from the database to not include the delimiters. This will cause issues anywhere we try to look up values by Name (Native Queries, Max Results)

Back to the top