Ciao ragazzi,
ho una tabella modulo_programmato ed una calendario_corsi.
Per ciascun modulo_programmato possono esistere n record di calendario_corsi. Il problema è che moduli programmati di corsi diversi possono essere fatti nelle stesse date di altri moduli.
Per fare un esempio, il modulo programmato x ha 2 date: oggi e domani.
Può capitare che il modulo programmato y venga fatto nello stesso momento e nello stesso luogo del modulo programmato x. Quindi non posso duplicare i record di calendario_corsi ma devo riferirmi a quelli esistenti di x.
E qui mi sono perso. Avevo fatto qualcosa del genere:
modulo_programmato
----------------------------
id
id_modulo (questo campo e il successivo mi servono per legare il modulo programmato al suo corso)
id_corso_programmato
calendario_corsi
------------------
id
data_inizio
data_fine
id_aula
calendario_modulo_programmato
-------------------------------------
id_calendario
id_modulo_programmato
ma in questo modo quando il corso y si sovrappone a quello x, avrò n record duplicati in calendario_modulo_programmato... e se nel frattempo viene inserita una nuova data in x? in questo modo il corso y rimarrebbe con i riferimenti al corso x che c'erano al momento dell'inserimento. E non va decisamente bene!
Non so se mi sono spiegato bene, spero di si... non ne riesco ad uscire!
Grazie