Concetti Chiave
- Il progetto consiste nella creazione di un database per gestire una biblioteca, includendo informazioni su libri, utenti e prestiti.
- Le entità principali definite sono "Libro", "Autore", "Categoria", "Utente" e "Prestito", ciascuna con attributi specifici.
- La struttura del database prevede relazioni N:M tra le entità, come "utente-prestito-libro", "libro-autore" e "libro-categoria".
- Il database registra dettagli come la collocazione fisica dei libri e le informazioni di prestito, inclusa la data di inizio e restituzione.
- L'esercizio include la creazione del diagramma ER, la realizzazione del database Access e l'esecuzione di query specifiche.
Testo dell'esercizio
Si vuole realizzare una base dati per la gestione di una biblioteca. La base dati conterrà tutte le informazioni riguardanti i volumi gestiti dalla biblioteca, gli utenti e i prestiti.
La biblioteca gestisce un certo numero di libri, di ognuno dei quali vogliamo poter conoscere il codice ISBN; il titolo, la lingua in cui è scritto, l'editore e l'anno di pubblicazione, oltre a tutti gli autori (che possono essere più di uno).
Di ciascun autore desideriamo conservare i principali dati anagrafici (nome, cognome, data e luogo di nascita,ecc) oltre ad una breve biografia.
Ad ogni libro sono associate una o più categorie, scelte da un insieme prefissato (ad es. “diritto” ,”informatica”, “economia”): un libro sulla firma digitale potrebbe per esempio essere inserito nella categoria “informatica” e “diritto”.
Di ogni libro possono esistere più copie, che condividono la stessa collocazione (sono fisicamente poste uno di fianco all'altra). L'indicazione della collocazione di un libro è suddivisa in tre parti: sezione, numero scaffale, e numero posto, ad esempio sezione informatica, scaffale 3, posto 56.
Gli utenti della biblioteca sono registrati nella base di dati tramite i loro dati anagrafici. A ciascun di loro, inoltre, è associato un numero di tessera e la data nella quale si sono registrati presso la biblioteca. Quando un utente ottiene un libro in prestito la base di dati registra la data di inizio prestito, gli estremi del libro prelevato e dell'utente che lo ha preso. Quando il libro viene riconsegnato, la base di dati completa le informazioni sul prestito inserendo anche la data di riconsegna.
1) Tracciare un diagramma entità relazione corrispondente al diagramma ER
2) Creare mediante MS Access il database relazionale corrispondente al diagramma ER.
3) Popolare il database con alcuni dati di prova ed eseguire le seguenti interrogazioni:
a) Elenco dei libri aventi “Franco Bianchi “ fra gli autori;
b) Elenco dei libri di diritto prestati al signor Mario Rossi e che sono stati restituiti.
Passo 1: studio del diagramma entità relazioni Definizione delle entità e delle relazioni.
“Libro” costituisce una entità e le caratteristiche (titolo, codice ISBN, lingua in cui è scritto, editore, anno di pubblicazione, sezione, numero scaffale e numero posto) costituiscono i suoi attributi. Il tipo entità libro viene rappresentato con una tabella con i medesimi attributi. In merito agli attributi “sezione”,”numero scaffale” e “numero posto” essi possono in alternativa costituire gli attributi di una entità separata “collocazione” collegata con relazione 1:1. tale eventuale modifica non comporta alcuna variazione sull'efficacia finale del database.
“Autore” costituisce una entità e le caratteristiche (nome, cognome, data di nascita, luogo di nascita, breve biografia) costituiscono i suoi attributi. Il tipo entità autore viene rappresentato con una tabella con i medesimi attributi;
“Categoria” costituisce una entità e la sua caratteristica (nome categoria) costituisce il suo unico attributo. Il tipo entità categoria viene rappresentato con una tabella con i medesimi attributi;
“Utente” costituisce una entità e le sue caratteristiche (nome, cognome, data di nascita, indirizzo, numero di tessera, data nella quale si è) costituiscono i suoi attributi. Il tipo entità utente viene rappresentato con una tabella con i medesimi attributi;
“prestito” è una relazione che collega le entità “utente” e “libro. Essa diviene tabella con i suoi attributi (data inizio prestito, data riconsegna) con in più gli attributi “ID utente” e “ID libro”.
“Scritto da” è una relazione che collega le entità “libro” e “autore”. Essa diviene una tabella con il suo attributo (anno) con l'aggiunta degli attributi “ID libro” e “ID autore”.
“Inserito in” è una relazione che collega le entità “libro” e “categoria”. Essa diviene una tabella con il suo attributo (data inserimento) con l'aggiunta degli attributi “ID libro” e “ID categoria”
La cardinalità della relazione utente-prestito-libro è di tipo N:M in quanto: o Un utente può chiedere più libri; o Un libro può essere chiesto in prestito da più utenti.
La cardinalità della relazione libro-scritto da-autore è di tipo N:M.
La cardinalità della relazione libro-inserito in-categoria è di tipo N:M .
Si può passare a questo punto alla rappresentazione grafica del diagramma entità relazioni:
Continua...
Scarica lo svolgimento completo dell'esercizio di database
Scarica il data base in Access
Domande da interrogazione
- Qual è l'obiettivo principale dell'esercizio descritto nel testo?
- Quali informazioni devono essere incluse nel database della biblioteca?
- Come vengono gestite le categorie dei libri nel database?
- Quali sono le relazioni principali tra le entità nel database?
- Quali query devono essere eseguite sul database una volta popolato?
L'obiettivo principale è creare un database per la gestione di una biblioteca, partendo dal diagramma entità-relazioni fino alla creazione di tabelle, relazioni e query con Access.
Il database deve includere informazioni sui libri (codice ISBN, titolo, lingua, editore, anno di pubblicazione, autori), utenti (dati anagrafici, numero di tessera, data di registrazione) e prestiti (data inizio e fine prestito, libro e utente coinvolti).
Ogni libro può essere associato a una o più categorie, scelte da un insieme prefissato, e questa relazione è rappresentata da una tabella che include l'ID del libro e l'ID della categoria.
Le relazioni principali sono tra "utente" e "prestito" (N:M), "libro" e "autore" (N:M), e "libro" e "categoria" (N:M).
Le query richieste sono: a) elenco dei libri con "Franco Bianchi" tra gli autori; b) elenco dei libri di diritto prestati a "Mario Rossi" e che sono stati restituiti.