2016-11-30 4 views
1

Ich habe drei Tabellen mit many-to-many-Beziehungen: Profil, Rolle und Typzwei Crossreference-Tabellen zusammenführen?

Dann habe ich zwei Querverweistabellen:

profile_role: 
    role_id : int 
    profile_id : int 

profile_type: 
    profile_id : int 
    type_id : int 

die gemeinsame Außen id in beiden Tabellen ist profile_id. Meine Idee ist, dass ich eine Tabelle erstellen, die die drei externen IDs enthält:

profile_role_type: 
    role_id : int 
    profile_id : int 
    type_id : int 

Meine Frage: ist die beiden Entwürfe sind äquivalent (kein Datenverlust oder Redundanz)?

Antwort

1

profile_role_type würde nur ein gültiger Ersatz sein, wenn es genau eine Zeile in profile_role mit den gleichen profile_id für jede Zeile in profile_type ist.

Das ist das lange und kurze davon.