cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Craig L Russell <Craig.Russ...@Sun.COM>
Subject Re: Select Query on Table with no Primary Key
Date Sat, 09 Jun 2007 20:27:57 GMT
Hi Andrus,

On Jun 7, 2007, at 11:38 PM, Andrus Adamchik wrote:

>
> On Jun 8, 2007, at 7:01 AM, Craig L Russell wrote:
>
>> Just FYI, when JDO reads data from tables without PK, it  
>> internally creates a unique id, similar to a generated PK, for the  
>> objects that it reads and these ids are discarded when no longer  
>> needed. The fact that the mapping is for tables without PK is  
>> known by the code that creates the temporary ids.
>>
>> Craig
>
> Hi Craig,
>
> I can probably implement this in Cayenne in about 30 minutes, as  
> Cayenne has a notion of "temporary id" (normally used for new  
> uncommitted objects). The problem of course is uniquing. So say if  
> a DB row is fetched from a table via a query, resulting in object  
> A, and then later the same row is navigated to via a relationship  
> from another object, resulting in a second object B, distinct from  
> A. This breaks the fundamental assumption about object identity. So  
> we chose not to go this way.

If you can navigate to a single A via a relationship, to me that  
implies that you have some unique constraint by which a single A is  
associated with another row. And if you have a unique constraint,  
then you can use that instead of a primary key.

Craig
>
> Andrus
>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!


Mime
View raw message