Programma Informatica 1 Esercitazione n. 9: Creazione di un

Programma Informatica 1
Esercitazione n. 9: Creazione di un database relazionale
Scopo di questa esercitazione è la creazione di una base dati relazionale per la gestione della biblioteca
universitaria; il database dovrà includere due tabelle, libri ed autori, collegate tra loro: ogni record
della tabella libri è collegato ad un solo record della tabella autori, mentre ad ogni record della tabella
autori corrispondono più record della tabella libri (Relazione uno-a-molti).
A – Avvio di Access e creazione di un file .mdb vuoto
Crea una cartella dal nome Esercitazione9 all’interno della cartella
c:\informatica\informatica1\esercitazioni_COM (oppure WEB o SAM)
Avvia MS ACCESS (in Windows, menù Avvio-Microsoft Access) e crea un nuovo database vuoto.
Salva il file con un nome a piacere (p.es. biblioteca, l’estensione è automaticamente .mdb).
Dal menù File, scegli Carica Dati Esterni e poi Importa o, in alternativa, clicca sul pulsante Nuovo
nella finestra database e poi scegli Importa tabella. Importa i dati del file Elenco_Autori.xls. Quando
richiesto, indica Intestazioni di colonne nella prima riga. Quando viene richiesto in quale tabella
importare i dati, scegli Tabella nuova. Non aggiungere chiavi primarie. Dai alla tabella il nome
Autori. Ripeti la procedura importando i dati del file Elenco_Libri.xls nella nuova tabella Libri.
C – Modifica la struttura della tabella “Autori”
Apri la tabella Autori in modalità Struttura, ed imposta le proprietà dei campi Nome, Cognome e
Nazione, come descritto di seguito.
Tipo Dati e Proprietà
Testo, dimensione: 20, indicizzato: No
Testo, dimensione: 20, indicizzato: No
Testo, dimensione: 20, indicizzato: No
Descrizione
D – Modifica la struttura della tabella “Libri”
Apri la tabella Libri in modalità Struttura, ed imposta le proprietà dei campi, come di seguito.
Prezzo
Data Pubblicazione
Tipo Dati e Proprietà
Testo, dimensione: 50, indicizzato: No
Testo, dimensione: 20, in dicizzato: No
Numerico, intero lungo, Indicizzato: Sì (duplicati
ammessi)
Valuta, formato Euro
Testo, dimensione: 4, indicizzato: No
Modifica la relazione tra le due tabelle: richiama la finestra Relazioni con il bottone Relazioni, oppure
menù Strumenti e comando Relazioni; fai doppio clic sulla relazione ed applica l’integrità
referenziale: seleziona la check box Applica Integrità referenziale e le due sottostanti check box.
Apri la tabella Libri in visualizzazione Foglio dati e verifica il contenuto del campo Link_autore:
esso contiene il valore del campo ID_Autore del record della tabella Autori collegato al
corrispondente record della tabella Libri. Prova a modificare il contenuto del campo Link_autore ,
inserendo un valore del campo ID_Autore inesistente (es. 100) e tenta di salvare i dati: scrivi qui il
messaggio di errore che appare e spiega cosa significa.
Dalla finestra database, cartella Maschere, crea una nuova maschera con l’autocomposizione;
specifica per ciascuna delle due tabelle, i campi da includere nella maschera (tutti ad eccezione dei
campi contatore e dei campi chiave). Scegli il modello Maschera con sotto-maschera, quindi il
layout Foglio Dati per la sotto-maschera e lo stile a quadretti per la maschera. Al termine, salva le
due maschere con nomi a piacere. Apri la maschera principale in modalità visualizzazione e modifica
i dati nelle due tabelle collegate: 1) aggiungi un autore, 2) aggiungi due libri all’autore,
3) cancella un autore (verifica che – grazie all’integrità referenziale – vengano cancellati anche i
record collegati della tabella Libri), 4) cancella un libro.
I – Modifica degli oggetti sulla maschera
Apri la maschera principale in visualizzazione struttura: disponi i campi Nome e Cognome in
orizzontale (sulla stessa riga). Aggiungi il campo ID_Autore. Salva e chiudi.
L – Creazione di una query di selezione (query standard) sulle due tabelle
Aggiungi un campo “ID_autore” di tipo Contatore. Imposta per questo campo la proprietà di chiave
primaria. Chiudi la tabella
Nome campo
Titolo
Genere
Link_autore
G – Inserimento integrità referenziale
H – Creazione di una maschera associata alle due tabelle (Fig. 1)
B – Importazione dati nelle tabelle
Nome campo
Nome
Cognome
Nazione
ciascun autore: clicca sull’indicatore di espansione
nella prima cella di ogni record; appare la
tabella correlata Libri (inserisci nella tabella Libri due record per l’autore aggiunto). Chiudi le tabelle.
Descrizione
Campo necessario per il
collegamento tra le due tabelle
Anno di pubblicazione
Aggiungi un campo ID_libro di tipo Contatore. Imposta per questo campo la proprietà di chiave
primaria. Chiudi la tabella
E – Impostazione delle relazioni tra tabelle
Per inserire relazioni tra tabelle, usa il bottone Relazioni, oppure dal menù Strumenti il comando
Relazioni. Aggiungi entrambe le tabelle create precedentemente alla finestra delle relazioni (usa
pulsante con un “+”). Metti in relazione il campo Link_autore della tabella Libri con il campo
ID_autore della tabella “Autori”: posiziona il mouse sul campo Link_autore e trascinalo sul campo
ID_autore (o viceversa). Appare una finestra di impostazione della relazione (nota che il sistema
imposta automaticamente la relazione come uno-a-molti). Fai click sul bottone Crea/Ok; verifica che
la relazione venga visualizzata correttamente, poi chiudi la finestra delle relazioni.
F – Visualizzazione delle tabelle e modifica dati
Apri ora la tabella Autori in visualizzazione Foglio dati ed inserisci un nuovo record (a piacere).
Mentre si inseriscono i dati degli Autori, è possibile visualizzare ed inserire i dati dei Libri scritti da
Dalla finestra database, cartella Query, crea una nuova query tramite l’autocomposizione; specifica
per ciascuna delle due tabelle, i campi da includere (tutti ad eccezione del campo Prezzo). Salva la
query con il nome Autori-Libri: vengono visualizzati i record correlati delle due tabelle. Torna alla
visualizzazione struttura: elimina dalla query i campi contatore e i campi chiave. Aggiungi nella query
il campo Prezzo. Riesegui la query.
M – Creazione di query a calcolo (Fig. 2)
Riapri la query in visualizzazione struttura. Aggiungi un campo espressione per calcolare l’aumento
del 12% del prezzo di ciascun libro: digita nella riga Campo di una qualsiasi colonna vuota della
query, l’espressione matematica =[Prezzo]*1,12. Esegui la query.
N – Creazione di un report con totali e sub-totali
Dalla finestra database, cartella Report, crea il report basato sulla query Autori-Libri (seleziona i
campi Titolo, Data Pubblicazione, Cognome, Prezzo, Genere). Imposta il raggruppamento dati in base
al campo Genere ; nella finestra successiva, ordina i dati in base al campo Titolo e imposta le Opzioni
di riepilogo al fine di calcolare, per ciascun genere letterario, la somma dei prezzi dei libri di quel
genere [
suggerimento: qualora non vengano impostate le opzioni di riepilogo durante
l’autocomposizione, apri il report in modalità struttura ed inserisci nel piè di pagina del gruppo
Genere e del report, due caselle di testo: nella palette degli strumenti seleziona una casella di testo e
clicca nel punto del report dove vuoi inserirla (piè di pagina del gruppo e del report). Visualizza la
finestra delle proprietà di ciascuna casella di testo ed inserisci nel campo Origine Controllo la
seguente espressione =Sum([Prezzo]). ] Alla fine, visualizza il report in anteprima (come in fig. 3).
O – “Progettazione” di un report con dati filtrati
Con la creazione guidata, realizza il report esattamente uguale (a parte lo stile grafico) a quello
mostrato in figura 4 (suggerimento: crea prima una nuova query e basa il report su di essa).
Fai ora in modo che il report visualizzi solamente i libri la cui data di pubblicazione sia successiva
all’anno 1990 (incluso).
Risultati (esempio) della esercitazione 9: Funzionalità avanzate di Access
MASCHERA “Autori” con sotto-maschera (Fig. 1)
QUERY DI CALCOLO (Fig. 2)
Titolo
I Promessi Sposi
Il Conte di Carmagnola
Adelchi
Canti
Operette Morali
Kosferatu
Codice a zero
Il codice Rebecca
La cruna dell'ago
Il pianeta dei bruchi
Il cavaliere inesistente
Collezione di sabbia
La Tregua
REPORT
con totali e sub-totali
(Fig. 3)
REPORT
con dati filtrati
(Fig. 4)
Genere
Letteratura
Letteratura
Letteratura
Poesia
Letteratura
Satira politica
Narrativa
Narrativa
Narrativa
Narrativa
Narrativa
Narrativa
Letteratura
Prezzo
€ 88
€ 14
€ 10
€ 60
€8
€ 19
€ 25
€ 18
€ 16
€ 20
€ 24
€ 20
€ 23
Prezzo
Data
aumentato pubblicazione
98,56 1960
15,68 1990
11,2 1988
67,2 1993
8,96 1995
21,28 2002
28 2002
20,16 1997
17,92 1996
22,4 2002
26,88 2000
22,4 1994
25,76 1997