On Jun 4, 2007, at 9:52 AM, John Armstrong wrote:
> I can enforce it unique in the database but I was thinking that
> Cayenne may have a more elegant way of managing it without having to
> manually apply the database changes after schema creation. To me that
> screamed 'New compound PK'.
To me it doesn't :-)
Seriously, ORM tool (CayenneModeler) doesn't attempt to replace your
DB management tools 100%, although it overlaps a lot. You should
still use DB facilities as appropriate.
> How do you create compound PK's in Cayenne? I'm still using the
> Modeller so I may have to edit the XML natively?
Go to the attributes tab of the given DbEntity and check the PK
checkboxes of those two extra columns.
But note that you would need to delete the "id" column then,
otherwise the UNIQUE constraint would span all three columns, not
just the two you wanted.
Also you would need to mark a relationship from ImapServer to the
table in question as "To Dep Pk", so that the serverid could be
propagated whenever you do myObject.setServer(myServer).
Andrus
This archive was generated by hypermail 2.0.0 : Mon Jun 04 2007 - 03:12:31 EDT