[Basi di dati] Dubbio modello E/R
Ciao, ho alcune difficoltà con il modello E/R. Sto modellando un cinema multisala.
Devo rappresentare i seguenti concetti:
- una prenotazione è associata ad N posti a sedere, tutti relativi allo stesso spettacolo
- a ciascun posto a sedere può essere o meno associato un biglietto
- un posto a sedere può essere associato a più prenotazioni nel tempo, perché una prenotazione può essere disdetta e quindi il posto è di nuovo prenotabile
Questo è uno schema molto semplificato che ho costruito:

Solo, non so come esprimere il fatto che tutti i posti a sedere relativi ad una prenotazione devono essere relativi allo stesso spettacolo.
Ho pensato di associare Prenotazione e Spettacolo, ma non la sostanza non cambia, perché potrei avere un posto a sedere associato ad uno spettacolo e ad una prenotazione relativa ad uno spettacolo diverso.
Ho anche pensato di introdurre una ternaria tra Prenotazione, Spettacolo e Posto a sedere, ma così non posso esprimere il fatto che un posto è relativo ad un solo spettacolo.
Sinceramente non riesco proprio a venirne a capo.
Devo rappresentare i seguenti concetti:
- una prenotazione è associata ad N posti a sedere, tutti relativi allo stesso spettacolo
- a ciascun posto a sedere può essere o meno associato un biglietto
- un posto a sedere può essere associato a più prenotazioni nel tempo, perché una prenotazione può essere disdetta e quindi il posto è di nuovo prenotabile
Questo è uno schema molto semplificato che ho costruito:

Solo, non so come esprimere il fatto che tutti i posti a sedere relativi ad una prenotazione devono essere relativi allo stesso spettacolo.
Ho pensato di associare Prenotazione e Spettacolo, ma non la sostanza non cambia, perché potrei avere un posto a sedere associato ad uno spettacolo e ad una prenotazione relativa ad uno spettacolo diverso.
Ho anche pensato di introdurre una ternaria tra Prenotazione, Spettacolo e Posto a sedere, ma così non posso esprimere il fatto che un posto è relativo ad un solo spettacolo.
Sinceramente non riesco proprio a venirne a capo.
Risposte
Io utilizzerei due identificatori esterni. Uno tra Prenotazione e Posto a sedere ed uno tra Posto a sedere e Spettacolo.
"Return89":
Io utilizzerei due identificatori esterni. Uno tra Prenotazione e Posto a sedere ed uno tra Posto a sedere e Spettacolo.
Io sapevo che l'identificatore esterno si può usare solo se l'entità partecipa alla relazione con cardinalità 1,1. Prenotazione invece ha cardinalità 1,N.