Datamodel advice

From: Fredrik Liden (flide..ranslate.com)
Date: Fri May 02 2008 - 15:14:13 EDT

  • Next message: Andrus Adamchik: "Re: Custom configuration class ignored in 3.0 snapshot"

    Hi, I'm wondering what is the best way to implement this structure in
    Cayenne:

    Let's say there is a list of users assigned to a client:
    m:n between USER (userid) and CLIENT (clientid) and between CLIENT_USER
    (userid,clientid) is the flattened table.

    Now from that list of users in CLIENT_USER I want to one and assign to
    say a certain languages. I believe the correct datamodel would be:

    m:n between CLIENT_USER (userid,clientid) and LANGUAGE (languageid)
    where ASSIGNMENT (userid,clientid,languageid) would be the between
    (flattened) table.
     
    Is it possible to have a flattened table (ASSIGNMENT) based on another
    flattened table (CLIENT_USER)? Or should I unflatten CLIENT_USER and add
    a cayenne generated id so it would be
    CLIENT_USER(client_userid,userid,clientid) and ASSIGNEMENT
    (client_userid,languaged) would be flattened.
    I find that I'm often coming back to this situation so just wondering if
    anyone has any suggestions.

    Thanks,
    Fredrik



    This archive was generated by hypermail 2.0.0 : Fri May 02 2008 - 15:14:52 EDT