• As I understand your first option you had 3 Entities (A, B, C) and a single link table, but you didn't define any table schemas.

    Lets assume each entity has a PK, int identity(1,1) The rest doesn't matter here.

    This means each table will have PKs 1,2,3,4,5,.... etc.

    The link table will then have columns

    Entity-PK int -- Points bask to the entity

    Count-Val int -- To maintain the 1-many relationship

    Photo_Location

    Under this model you can have the situation where the link table has rows

    1,1,Path_A11

    1,2,Path_A12

    1,3,Path_B13

    Where Path_A photos are from entity A, and Path_B photos are from entity B.

    the query: SELECT E.PK, L.Count_Val, L.Photo_Location from Entity_B E join LinkTable L on E.PK = L.Entity_PK

    will return photos from Path_A and Path_B which is wrong, it should only have returned Path_B13 !

    You therefore need another column to identify which entity the photo relates to, or some other system such as different identity rangers at the entity level.

    Cheers

    Leo

    Leo
    Nothing in life is ever so complicated that with a little work it can't be made more complicated.