vuoi
o PayPal
tutte le volte che vuoi
Database affitto veicoli?
Testo del quesito
La società salento trasporti? dispone di diversi tipi di veicoli (moto, auto, furgoni, camion,...) che affitta ai propri clienti.
La società vuole informatizzare le procedure di affitto creando un archivio per la gestione dei clienti (Cognome, Nome, indirizzo, telefono, e-mail,CF, Partita IVA, ...), dei veicoli (targa cilindrata, tipo di veicolo, modello e marca, numero massimo di passeggeri, peso massimo trasportabile, canone giornaliero di affitto), delle prenotazioni (data prenotazione, durata della prenotazione in giorni, prezzo) e degli effettivi affitti (data di inizio, durata, prezzo) che possono differire dalle prenotazioni (una prenotazione può non essere confermata, può durare più del previsto, il veicolo prenotato può essere cambiato, ...).
1) tracciare su carta un diagramma Entità -Relazioni che rappresenti la situazione descritta;
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 clienti che nel 2007 hanno effettuato almeno una prenotazione; b) elenco dei clienti che nel 2007, dopo aver prenotato, hanno effettivamente affittato il veicolo prenotato; c) spesa globale del sig. Mario Rossi nel 2007.
Scarica lo svolgimento completo dell'esercizio di database
Scarica il database di Access
Passo 2: creazione delle tabelle
¾ Lanciare MS Access
¾ Selezionare dal menu file “nuovo”.
¾ Comparirà sulla destra un menù, quindi selezionare “database vuoto“
¾ Verrà chiesto di salvare il file sul computer prima di iniziare a lavorare.
Salvare e premere ok.
¾ Si inizia a creare le tabelle. Una volta salvato il file comparirà una finestra
relativa alla creazione di diversi oggetti (tabelle, query, maschere, report,
pagine, macro e moduli).Selezionare “tabelle”.
¾ Selezionare “crea una tabella in visualizzazione struttura”. Compare una
schermata in cui vengono chiesti i nome dei vari campi, il tipo dei dati ed una
breve descrizione.
¾ Creazione della tabella dell’entità cliente inserendo gli attributi: Cognome,
Nome, indirizzo, teleono, email, CF, Partita IVA. Essi sono tutti di tipo testo
ad eccezione del telefono e partita IVA che sono del tipo numerico. Oltre a tali
attributi va aggiunto “ID utente” di tipo contatore e chiave primaria
Figura 1: creazione della tabella utente
¾ Creazione della tabella dell’entità veicolo inserendo gli attributi (targa,
cilindrata, tipo di veicolo, modello, marca, numero massimo di passeggeri,
peso massimo trasportabile, canone giornaliero di affitto) nonché lD veicolo
che sarà di tipo contatore e chiave primaria
Figura 2: creazione tabella veicolo
¾ Creazione della tabella di relazione affitta. Essa collega l’entità utente e l’entità
veicolo; gli attributi da inserire come campi sono data inizio, durata, prezzo
nonché gli ID delle entità che la tabella collega (ID utente e ID veicolo). La
chiave primaria sarà una combinazione fra l’ID utente, l’ID veicolo e la data di
inizio. In tal modo è garantita l’univocità.
Figura 3: creazione della tabella di relazione "affitta"
¾ Creazione della tabella di relazione “prenota”. . Essa collega l’entità utente e
l’entità veicolo; gli attributi da inserire come campi sono data inizio, durata,
prezzo nonché gli ID delle entità che la tabella collega (ID utente e ID veicolo).
La chiave primaria sarà una combinazione fra l’ID utente, l’ID veicolo e la
data di inizio.
Figura 4. creazione della tabella di relazione "prenota"
¾ Sulla schermata principale si visualizzeranno tutte le tabelle create:
Figura 5: pagina principale con tutte le tabelle create
Passo 3: creazione della relazione fra le tabelle
¾ Una volta completate le tabelle si passa alla relazione delle stesse nello stesso
modo in cui è stato fatto il diagramma entità-relazioni. Dalla barra degli
strumenti selezionare “relazioni”
¾ Cliccando il tasto relazioni si aprirà una nuova finestra detta appunto
“relazioni”. Per accedere bisogna selezionare su un’altra finestra sovrapposta
(detta “mostra tabella”) le tabelle che si desidera relazionare e quindi nel nostro
caso digitiamo tutte e 4 le tabelle
Figura 6: tabella che visualizza gli elementi che possono servire per creare relazioni
¾ Si collegano le tabelle fra di loro trascinando l’ID utente della tabella utente sul
corrispettivo ID utente della relazione affitto. Eseguita tale operazione si aprirà
una nuova finestra in cui sono indicati i campi che si vuole legare che sono
stati appena trascinati. Selezionare la voce “applica integrità referenziale”. Una
relazione di questo tipo garantisce che ogni valore inserito in una colonna di
chiave esterna corrisponda ad un valore esistente nella colonna di chiave
primaria correlata.
Figura 7: creazione della relazione fra gli ID utente relativi alle tabelle “utente” e “affitta”
¾ Si procede allo stesso modo per legare fra di loro le voci “ID veicolo” relative
alle tabelle “affitta” e “veicolo”
¾ Si procede allo stesso modo per legare fra loro le voci “ID utente” relative alle
tabelle “utente” e “prenota”
¾ Si procede allo stesso modo per legare fra di loro le voci “ID veicolo” relative
alle tabelle “prenota” e “veicolo”. Il risultato di tali operazioni sarà:
Figura 8: diagramma delle relazioni
Passo 4: modifica dei parametri delle tabelle di relazione
¾ Prima di procedere a popolare il database si modifica la struttura delle tabelle
di relazione per una visualizzazione più chiara del contenuto.
Tabella di relazione “affitta”
• Aprire la tabella “affitta” in visualizzazione struttura, selezionare “ID
utente”, cliccare ricerca e modificare i seguenti parametri:
Visualizza controllo: casella combinata
o Origine riga: utente
o Numero colonne: 2
o Larghezza colonne: 0
o
Figura 9: inserimento dei parametri dell'ID utente
¾ Procedere allo stesso modo per modificare “ID veicolo” con le uniche
differenze che l’origine riga sarà veicolo e il numero colonne 3
Figura 10: inserimento dei parametri dell'ID veicolo
¾ Questo procedimento si ripete anche per la tabella di relazione “prenota”.
Passo 5: popolamento delle tabelle
¾ Effettuata la modifica delle tabelle di relazione si può popolare il database
inserendo i dati:
Figura 11: inserimento dei dati degli utenti
Figura 12: inserimento dei dati dei veicoli
Figura 13: inserimento dei dati degli affitti
Figura 14: inserimento dei dati delle prenotazioni
Passo 6: query
Query n.1.
¾ La prima query da esaminare è: elenco dei clienti che nel 2007 hanno effettuato
almeno una prenotazione. Si tratta di una query di selezione basata su due tabelle.
Dalla finestra principale di MS Access selezionare query e cliccare su “crea una
query in visualizzazione struttura”
¾ Una volta cliccato compariranno due finestre sovrapposte. La prima finestra su cui
possiamo accedere è “mostra tabella” in cui dobbiamo digitare “aggiungi” in
corrispondenza alle tabelle che servono nella query. Nel caso in questione le tabelle
“utente” e “prenota”
Figura 15: creazione della query
¾ Si selezionano gli attributi che servono per applicare il criterio (data) o che è
necessario sia visualizzato (nome e cognome utente).
¾ Si aggiunge il parametro della data indicando al programma di cercare tutti i record
che si trovano tra il 31/12/06 escluso al 01/01/08 escluso. Si deseleziona la casella
mostra in corrispondenza della colonna data per fare in modo che non sia
visualizzato.
Figura 16: creazione della query con l'inserimento del parametro
Figura 17: risultato della query
Query n.2
¾ La seconda query chiede: elenco dei clienti che nel 2007, dopo aver prenotato,
hanno effettivamente affittato il veicolo prenotato. Si tratta anche in questo caso di
una query di selezione basata su più tabelle con in più l’aggiunta di una join. Dopo
aver aperto la query in visualizzazione struttura si selezionano le tabelle coinvolte
nella query (utente, prenota, affitta)
Figura 18: creazione della query
¾ Si selezionano gli attributi che servono per applicare il criterio (data) o che è
necessario sia visualizzato (nome e cognome utente). In questo caso la query è di
tipo simile a quella appena esaminata con la differenza che bisogna inserire delle
join per fare in modo che nelle tabelle di relazione “prenota” e “affitta” ci sia
uguaglianza negli attributi ID veicolo ID utente data e durata.
Figura 19: query con il criterio e le join
Figura 20: risultato della query
Query n.3
¾ La terza query chiede la spesa globale del sig. Rossi nel 2007. selezionare le tabelle
che servono dalla finestra “mostra tabella” che sono: “utente”, “affitta” ”veicolo”
Figura 21: creazione della query
¾ Si inseriscono i campi e i criteri: