|
Io farei così: ti scrivo direttamente le tabelle (lo schema ER te lo fai tu!)
Libro (codice, titolo, copie) //codice PK
Argomento (codice, testo) //codice PK
Poichè un libro può trattare più argomenti:
GenereLib (libro,argomento) //libro FK Libro(codice), argomento FK Argomento(codice)
Utente (codice, nome) //codice PK
Prestito (utente,libro) // utente FK di Utente(codice), libro FK di Libro(codice) utente e libro sono una chiave
Per il vincolo sul prestito devi imporre che la coppia (utente,libro) nella relazione Prestito sia una chiave! In questo modo un utente non può avere in prestito più copie dello stesso libro.
Infine devi mettere un trigger che ti controlli che se un libro è stato prestato x volte allora x<=Libro(copie) ogni qual volta vi è una richiesta di prestito.
|