[ 
https://issues.apache.org/jira/browse/JDO-660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12915439#action_12915439
 ] 

Craig L Russell commented on JDO-660:
-------------------------------------

Assuming that we don't require that the numbers be contiguous, users could 
handle subclasses by allowing space between column numbers in the superclass 
and filling the spaces in subclasses.

When processing table creation, all classes mapped to the table would have 
their column numbers considered together. We can require that duplicate numbers 
either throw an exception or that the duplicates get resolved by treating all 
columns with the same column number equally, and the columns appear in some 
non-deterministic place "together" in the schema.

And we also should consider mixed case, where some columns have column numbers 
and some don't. Should this be an error, or just pile the non-numbered columns 
at the end?

> Ability to specify positioning of field 'column(s)' in datastore "table"
> ------------------------------------------------------------------------
>
>                 Key: JDO-660
>                 URL: https://issues.apache.org/jira/browse/JDO-660
>             Project: JDO
>          Issue Type: New Feature
>          Components: api, specification, tck
>            Reporter: Andy Jefferson
>             Fix For: JDO 3 maintenance release 1
>
>         Attachments: JDO-660.patch
>
>
> With an RDBMS datastore, when generating the schema, it is desirable to be 
> able to specify the positioning of the column(s) of a field in the generated 
> table. 
> With spreadsheet documents, it is critical to be able to define which column 
> number is used for a particular field.
> With other datastores it is also likely desirable.
> To achieve this I propose adding an attribute to the XML <column> called 
> "position". Similarly for the @Column annotation.
> This can take integer values with 0-origin.
> Complications : 
> 1. how this is handled when we have inheritance. If a root class has 
> subclass-table inheritance, then those fields are persisted into the tables 
> of all subclasses, and we may want to override the positions for those 
> individually - to that end the user can override the metadata of the 
> superclass fields. 
> 2. anything else ?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to