DOMANDA Agenda con Java Enterprise

ciccios90

Nuovo Utente
4
0
Salve a tutti ... sto sviluppando una agenda online con java enterprise. Le funzioni dell'agenda sono inserire un evento, rimuoverlo, trovarlo e condividerlo. In pratica volevo qualche indicazione su come sviluppare lo schema relazionale del DataBase ( con mySql ). Io ho pensato come tabelle: Cliente, evento, agenda. Il fatto è che mi sembrano troppo poche per gestire l'intera applicazione. Qualcuno ha qualche suggerimento???
 

fredperry

Nuovo Utente
18
6
Da quello che hai descritto le tre tabelle sembrerebbero bastare, al netto delle relazione tra tali tabelle. In particolare io vedrei
A) relazione 1 a molti tra il cliente e l'agenda(cioè un cliente può avere più agende ma un agenda può essere di un solo cliente)
B) relazione 1 a molti tra agenda e evento (stesso principio di prima)
C) se gli eventi devono essere condivisi allora deve esserci una relazione Molti a Molti tra evento e cliente(cioè un evento può essere condiviso con più clienti e ad un cliente si possono condividere più eventi)
Non so come debba essere poi la logica applicativa ma un'altra opzione potrebbe essere che un cliente può condividere l'evento solo con altri clienti che conosce e quindi servirebbe una relazione riflessiva (molti a molti) sulla tabella cliente per definire chi conosce chi.
Ti ricordo che le relazione molti a molti (many to many) si fanno con una tabella di relazione e quindi alle tre tabelle iniziali devi sommare le tabelle di relazione necessarie (un esempio potrebbe essere CondivisioneEvento che contiene l'id dell'evento e del cliente al quale è stato condiviso).
Uno schemino potrebbe essere questo

ModelloAgenda.png
 
Ultima modifica:
  • Mi piace
Reazioni: ciccios90

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!