Mysql
 sql >> Database >  >> RDS >> Mysql

Relazioni multiple tra due entità, è una buona pratica?

Non è che "la relazione [è] registrata due volte", ma che in realtà hai due relazioni tra queste tabelle, il che va benissimo. La mia unica preoccupazione è, un manager può appartenere allo stesso ufficio di cui è il manager? (E in relazione:è proprio vero che ogni il membro del personale ha un ufficio e ogni l'ufficio ha un manager che è un membro del personale?) In tal caso, hai una dipendenza circolare:non puoi impostare l'ufficio del manager finché l'ufficio non esiste, ma non puoi impostare il manager dell'ufficio finché il manager non esiste. Finché l'uno o l'altro campo è nullable, puoi aggirare questo problema con la logica dell'applicazione (INSERT uno, quindi INSERT l'altro, quindi UPDATE il primo), ma è un po' brutto. Ma se queste sono le relazioni che esistono, allora non puoi farci molto.