You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jdo-dev@db.apache.org by "Craig L Russell (JIRA)" <ji...@apache.org> on 2010/09/27 21:18:34 UTC

[jira] Commented: (JDO-660) Ability to specify positioning of field 'column(s)' in datastore "table"

    [ 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.