Glossario dei concetti chiave dell'applicazione
1. TABELLA
In Microsoft Access, una tabella è l’elemento fondamentale del database, utilizzata per archiviare i dati in modo strutturato. Ogni tabella è composta da righe (chiamate record) e colonne (chiamate campi), dove ogni campo rappresenta un tipo di informazione (es. nome, data, importo) e ogni record rappresenta un’unità completa di dati (es. un cliente, un ordine, un prodotto).
Le tabelle possono contenere chiavi primarie per identificare univocamente ogni record, e possono essere collegate tra loro tramite relazioni basate su chiavi esterne. Access consente di definire il tipo di dato per ogni campo (testo, numero, data, valuta, ecc.), applicare regole di validazione, creare indici per velocizzare le ricerche, e gestire formati personalizzati. Le tabelle possono essere create manualmente, importate da fonti esterne (come Excel o SQL Server), oppure generate da query. In sintesi, la tabella è il contenitore logico e strutturato che rende possibile la gestione, l’analisi e la condivisione dei dati all’interno di Access.
2. CAMPO
In Microsoft Access, un
campo è una colonna all’interno di una tabella che
rappresenta un tipo specifico di informazione relativa a
ciascun record. Ogni campo ha un nome (es.
NomeCliente
, DataOrdine
, Importo
) e un
tipo di dato associato, come testo, numero, data/ora,
valuta, sì/no, allegato, ecc. Questo tipo di dato determina il formato e il
comportamento del contenuto del campo.
Ad esempio, un campo di tipo “Data/Ora” accetterà solo valori temporali, mentre uno di tipo “Valuta” sarà adatto per importi monetari. I campi sono fondamentali per la struttura del database, poiché definiscono quali informazioni vengono raccolte e come vengono gestite. È possibile impostare proprietà aggiuntive per ciascun campo, come lunghezza massima, formattazione, regole di validazione, indicizzazione e obbligatorietà. Alcuni campi possono essere utilizzati come chiave primaria, cioè come identificatore univoco per ogni record. In sintesi, il campo è l’unità base che, insieme agli altri campi, compone la struttura logica della tabella e consente di organizzare i dati in modo preciso e coerente.
3. RECORD
In Microsoft Access, un record è una riga all’interno di una tabella che rappresenta un’unità completa e coerente di informazioni compostA da campi (colonne), in cui ciascun campo contiene un dato specifico relativo a quell’unità. Ad esempio, in una tabella “Clienti”, un record può contenere il nome, il cognome, l’indirizzo, il numero di telefono e l’email di un singolo cliente.
Ogni record è distinto dagli altri e può essere identificato in modo univoco tramite una chiave primaria, come un ID numerico. I record sono fondamentali per la gestione dei dati in Access, poiché rappresentano le istanze reali delle informazioni archiviate. L’inserimento, la modifica, la cancellazione e la ricerca dei record avviene tramite maschere, query e report, che permettono di interagire con i dati in modo semplice e strutturato. In sintesi, il record è l’elemento dinamico del database, che raccoglie e organizza i dati in modo logico e relazionale.
4. CHIAVE PRIMARIA.
In Microsoft Access, una chiave primaria è un campo (o una combinazione di campi) che identifica in modo univoco ogni record all’interno di una tabella. Questo significa che il valore della chiave primaria non può essere duplicato né lasciato vuoto: ogni record deve avere un valore unico in quel campo. La chiave primaria è fondamentale per garantire l’integrità dei dati e per stabilire relazioni tra tabelle, collegando ad esempio un cliente ai suoi ordini o un prodotto alle sue categorie.
Access consente di impostare la chiave primaria in visualizzazione struttura della tabella, selezionando il campo desiderato e cliccando sull’icona della chiave. Spesso si utilizza un campo di tipo Contatore (AutoNumber), che genera automaticamente un numero progressivo per ogni nuovo record. Tuttavia, è possibile usare anche codici personalizzati o altri identificatori univoci. La chiave primaria è essenziale per creare relazioni uno-a-molti, per eseguire query efficienti e per evitare duplicazioni o incongruenze nei dati. In sintesi, è il pilastro che sostiene la struttura logica e relazionale del database Access.
5. CHIAVE ESTERNA
In Microsoft Access, una
chiave esterna è un campo in una tabella che riferisce
alla chiave primaria di un’altra tabella. Serve a
collegare logicamente i dati tra tabelle diverse, creando una
relazione tra di esse. Ad esempio, nella tabella “Ordini”,
il campo IDCliente
può essere una chiave esterna che punta alla
chiave primaria IDCliente
nella tabella “Clienti”. Questo
collegamento permette di sapere a quale cliente appartiene ogni ordine,
senza duplicare le informazioni del cliente in ogni record.
La chiave esterna è essenziale per mantenere la coerenza e l’integrità dei dati. Quando si imposta una relazione tra tabelle in Access, è possibile attivare l’integrità referenziale, che impedisce di inserire valori nella chiave esterna che non esistono nella tabella di riferimento. Inoltre, Access consente di configurare aggiornamenti e cancellazioni a catena, in modo che le modifiche nella tabella principale si riflettano automaticamente in quella collegata. In sintesi, la chiave esterna è il ponte che collega le informazioni tra tabelle, rendendo possibile la costruzione di un database relazionale solido e funzionale.
6. RELAZIONE
In Microsoft Access, una relazione è un collegamento logico tra due tabelle che consente di associare i dati in modo coerente e strutturato. Le relazioni si basano su campi comuni, solitamente una chiave primaria in una tabella e una chiave esterna nell’altra. Questo legame permette di evitare la duplicazione delle informazioni e di mantenere l’integrità dei dati. Ad esempio, una relazione tra la tabella “Clienti” e la tabella “Ordini” consente di sapere quali ordini appartengono a ciascun cliente, senza dover ripetere i dati anagrafici in ogni record.
Access supporta diversi tipi di relazioni:
-
Uno-a-molti: il più comune, dove un record in una tabella può essere collegato a più record in un’altra.
-
Uno-a-uno: meno frequente, usato per separare dati sensibili o estendere una tabella.
-
Molti-a-molti: richiede una tabella di giunzione che contiene le chiavi esterne di entrambe le tabelle principali.
Le relazioni si gestiscono tramite la finestra “Relazioni”, dove è possibile visualizzare graficamente i collegamenti tra le tabelle, impostare l’integrità referenziale e definire regole di aggiornamento o eliminazione a catena. In sintesi, la relazione è il meccanismo che trasforma un insieme di tabelle isolate in un database relazionale, capace di gestire dati complessi in modo efficiente e integrato.
7. INTEGRITA' REFERENZIALE
In Microsoft Access, l’integrità referenziale è una regola che garantisce la coerenza dei dati tra tabelle collegate da una relazione. Quando si stabilisce una relazione tra una chiave primaria in una tabella e una chiave esterna in un’altra, l’integrità referenziale assicura che ogni valore presente nella chiave esterna corrisponda a un valore esistente nella chiave primaria. In altre parole, impedisce che si creino collegamenti a record inesistenti, evitando errori logici e dati orfani.
Access consente di attivare questa opzione nella finestra “Relazioni”, dove è anche possibile impostare due funzionalità aggiuntive:
-
Aggiorna a catena: se il valore della chiave primaria cambia, Access aggiorna automaticamente tutti i record collegati.
-
Elimina a catena: se un record con chiave primaria viene eliminato, Access elimina anche tutti i record correlati nella tabella secondaria.
L’integrità referenziale è fondamentale per mantenere un database relazionale stabile e affidabile, soprattutto quando si lavora con molte tabelle interconnesse. Aiuta a prevenire incongruenze, migliora la qualità dei dati e semplifica la manutenzione del sistema.
8. TIPO DI DATI
In Microsoft Access, il tipo di dati è una proprietà fondamentale di ogni campo in una tabella, che determina quale tipo di informazione può essere inserita in quel campo. Ad esempio, un campo può essere configurato per accettare solo testo, numeri, date, valute, valori logici (Sì/No), allegati, o collegamenti ipertestuali. La scelta del tipo di dati è cruciale per garantire la coerenza, la validità e il comportamento corretto dei dati nel database.
Access offre una varietà di tipi di dati, tra cui:
-
Testo breve: fino a 255 caratteri, per nomi, codici, descrizioni.
-
Testo lungo (Memo): per note estese o commenti.
-
Numero: con sottotipi come intero, decimale, singolo, doppio.
-
Data/Ora: per gestire date e orari con formati personalizzabili.
-
Valuta: per importi monetari con simboli e decimali.
-
Contatore (AutoNumber): genera automaticamente un valore univoco.
-
Sì/No: per risposte binarie o booleani.
-
Oggetto OLE e Allegato: per contenuti multimediali o file.
-
Collegamento ipertestuale: per URL, email o percorsi.
-
Calcolato: per eseguire operazioni basate su altri campi.
La corretta definizione del tipo di dati migliora la gestione, la ricerca, la validazione e l’analisi dei dati, rendendo il database più efficiente e affidabile.
9. PROPRIETA' DEL CAMPO
In Microsoft Access, le proprietà del campo sono impostazioni che controllano il comportamento, la visualizzazione e la validazione dei dati all’interno di un campo di una tabella. Queste proprietà determinano:
-
Il formato dei dati (es. valuta, percentuale, data breve)
-
La dimensione massima del campo (es. 255 caratteri per testo breve)
-
Il tipo di dati (es. numerico, testo, data/ora)
-
La regola di validazione (es. intervallo numerico ammesso)
-
Il valore predefinito (es.
Date()
per inserire automaticamente la data corrente) -
La maschera di input (per guidare l’utente nell’inserimento corretto)
-
L’indicizzazione (per velocizzare ricerche e ordinamenti)
10. INDICE
L’indice in Microsoft Access è uno strumento che consente di velocizzare la ricerca e l’ordinamento dei dati all’interno di una tabella. Funziona in modo simile all’indice di un libro: invece di sfogliare tutte le pagine per trovare un argomento, l’indice ti guida direttamente al punto giusto. Allo stesso modo, Access usa l’indice per trovare rapidamente i record, evitando di analizzare ogni riga della tabella.
Quando si crea un indice su un campo, Access costruisce una struttura interna che memorizza la posizione dei valori. Questo permette di eseguire query, filtri e ordinamenti in modo molto più rapido, soprattutto su tabelle con molti dati.
Gli indici possono essere singoli (basati su un solo campo) o composti (basati su più campi). Inoltre, possono essere con duplicati (consentono valori ripetuti) oppure senza duplicati (impediscono la ripetizione, come nel caso del codice fiscale).
La chiave primaria di una tabella è sempre indicizzata automaticamente, perché rappresenta l’identificativo univoco di ogni record. Tuttavia, è possibile indicizzare anche altri campi, come il cognome, la data di nascita o il codice cliente, se si prevede di usarli spesso per ricerche o ordinamenti.
La creazione di un indice avviene nella visualizzazione struttura della tabella, dove si può impostare la proprietà “Indicizzato” su “Sì” o “Sì (Nessun duplicato)”. È anche possibile gestire più indici contemporaneamente tramite la finestra “Indici”.
È importante sapere che, se da un lato gli indici migliorano le prestazioni in lettura, dall’altro possono rallentare le operazioni di scrittura, come l’inserimento o la modifica dei dati, perché Access deve aggiornare l’indice ogni volta che un record cambia.
In sintesi, l’indice è una scorciatoia intelligente che rende il database più efficiente, ma va usato con criterio per evitare effetti indesiderati sulle prestazioni complessive.
11. QUERY
Nel contesto di Microsoft Access, una query è uno strumento fondamentale che consente di interagire con i dati contenuti nel database in modo dinamico e intelligente. Non si tratta semplicemente di una ricerca, ma di una vera e propria interrogazione strutturata che permette di selezionare, filtrare, ordinare, calcolare, modificare o eliminare dati in base a criteri specifici.
Immagina un database come un grande archivio digitale, composto da tabelle che contengono informazioni organizzate in righe e colonne. Una query è come un assistente che, su tua richiesta, va a cercare esattamente ciò che ti serve, ignorando tutto il resto. Può rispondere a domande complesse come:
-
“Quali clienti hanno effettuato più di tre acquisti nell’ultimo mese?”
-
“Quali prodotti hanno un prezzo superiore alla media?”
-
“Aggiorna il campo ‘Stato’ per tutti gli ordini consegnati.”
Le query sono utilizzate per:
- estrarre dati mirati da una o più tabelle;
- combinare informazioni provenienti da fonti diverse;
- eseguire calcoli direttamente sui dati (es. somma, media, conteggio);
- automatizzare operazioni ripetitive, come aggiornamenti o eliminazioni;
- creare report personalizzati o visualizzazioni aggregate.
In pratica, le query trasformano Access da semplice contenitore di dati a strumento di analisi e gestione avanzata.
Access offre diversi tipi di query, ognuna con una funzione specifica:
Tipo di Query |
Funzione |
---|---|
Query di selezione | Recupera dati in base a criteri definiti. |
Query di aggiornamento | Modifica i dati esistenti in una tabella. |
Query di eliminazione | Cancella record che soddisfano certe condizioni. |
Query di accodamento | Aggiunge dati da una fonte esterna a una tabella esistente. |
Query di creazione tabella | Genera una nuova tabella a partire dai risultati della query. |
Query a campi incrociati | Crea tabelle pivot per analisi statistiche. |
12. MASCHERA
In Microsoft Access, una maschera è un oggetto del database che funge da interfaccia grafica per l’inserimento, la visualizzazione e la modifica dei dati. È progettata per semplificare l’interazione dell’utente con le tabelle e le query sottostanti, offrendo un ambiente più intuitivo e controllato rispetto alla visualizzazione diretta dei dati in formato tabellare.
Immagina la maschera come una finestra personalizzabile che mostra solo i campi necessari, con etichette, pulsanti, caselle di testo e altri controlli che guidano l’utente passo dopo passo. Questo approccio riduce gli errori, migliora la leggibilità e consente di automatizzare operazioni ripetitive grazie all’integrazione con macro e codice VBA.
Principali funzioni
- Inserimento guidato dei dati: consente agli utenti di compilare record in modo ordinato, con controlli di validazione e formattazione.
- Visualizzazione selettiva: mostra solo i campi rilevanti, nascondendo quelli non necessari o sensibili.
- Modifica controllata: permette di aggiornare i dati in modo sicuro, con regole che evitano errori.
- Automazione: tramite pulsanti e macro, è possibile eseguire azioni come salvare, passare al record successivo, calcolare valori, inviare notifiche.
- Personalizzazione estetica: si possono aggiungere colori, immagini, etichette e layout per rendere l’interfaccia più gradevole e funzionale.
Access consente di creare diversi tipi di maschere:
- Maschera semplice: mostra un record alla volta, ideale per l’inserimento dati.
- Maschera divisa: combina visualizzazione tabellare e dettagliata.
- Maschera multipla: mostra più record contemporaneamente.
- Maschera con sottomaschere: utile per visualizzare dati correlati (es. cliente e ordini).
- Maschera di navigazione: consente di spostarsi tra diverse sezioni del database.
13. REPORT
Un report in Microsoft Access è un oggetto del database che consente di visualizzare, formattare e stampare i dati in modo chiaro, ordinato e professionale. Mentre le maschere sono pensate per l’inserimento e la modifica dei dati, i report servono principalmente per presentare le informazioni in modo strutturato, spesso per la stampa o la condivisione.
Immagina il report come una fotografia organizzata del tuo database: puoi decidere quali dati mostrare, come raggrupparli, ordinarli, calcolarli e impaginarli. È lo strumento ideale per creare documenti aziendali come fatture, elenchi clienti, riepiloghi vendite, report finanziari, analisi statistiche e molto altro.
Principali funzioni
Visualizzazione professionale dei dati: i report permettono di presentare i dati in modo leggibile e coerente, con intestazioni, sommari, totali e formattazioni personalizzate.
Sintesi e analisi: puoi includere calcoli, raggruppamenti e riepiloghi per ottenere una visione d’insieme dei dati.
Stampa e distribuzione: i report sono pensati per essere stampati o esportati (PDF, Excel, ecc.), ideali per riunioni, archiviazione o comunicazioni ufficiali.
Personalizzazione grafica: Access consente di aggiungere loghi, colori, immagini di sfondo, formattazione condizionale e layout personalizzati.
Un report è composto da diverse sezioni, ciascuna con una funzione specifica:
-
Intestazione del report: contiene titolo, logo, data.
-
Intestazione di pagina: ripete il titolo su ogni pagina.
-
Intestazione di gruppo: introduce ogni gruppo di record (es. per cliente o categoria).
-
Dettagli: mostra i dati riga per riga.
-
Piè di pagina: può contenere numeri di pagina, note, totali.
14. JOIN
Nel contesto di Microsoft Access, un JOIN è un’operazione che consente di collegare i dati di due o più tabelle in base a campi comuni, solitamente chiavi primarie ed esterne. È il cuore del modello relazionale: permette di navigare tra le tabelle e costruire query che combinano informazioni provenienti da fonti diverse, come se fossero un’unica tabella virtuale.
Immagina di avere una tabella Clienti
e una tabella Ordini
. Grazie al JOIN, puoi creare una query che
mostra quali ordini ha effettuato ciascun cliente, anche se
i dati sono distribuiti su tabelle separate. Il JOIN è quindi una
relazione temporanea che viene definita al momento della creazione
della query e dura solo per il tempo della sua esecuzione.
Serve a:
- collegare logicamente tabelle diverse;
- estrarre informazioni combinate da più fonti;
- ridurre la ridondanza dei dati;
- costruire query complesse che riflettano relazioni reali tra entità (es. clienti, ordini, prodotti).
Access supporta diversi tipi di JOIN, ciascuno con un comportamento specifico:
Tipo di JOIN |
Descrizione |
---|---|
INNER JOIN | Mostra solo i record che hanno corrispondenze in entrambe le tabelle. È il tipo predefinito. |
LEFT JOIN | Mostra tutti i record della prima tabella e solo quelli corrispondenti della seconda. |
RIGHT JOIN | Mostra tutti i record della seconda tabella e solo quelli corrispondenti della prima. |
FULL JOIN | Mostra tutti i record di entrambe le tabelle, anche se non corrispondono. |
CROSS JOIN | Combina ogni record della prima tabella con ogni record della seconda (prodotto cartesiano). |
UNEQUAL JOIN | Unisce record in base a condizioni diverse dall’uguaglianza (meno comune) |
15. CONVALIDA
La convalida dei valori inseriti in Microsoft Access è un insieme di regole e controlli che garantiscono che i dati immessi in un campo o in un record siano corretti, coerenti e accettabili secondo criteri definiti. In altre parole, è un meccanismo che impedisce l’inserimento di dati errati, incompleti o non conformi, migliorando la qualità del database e riducendo gli errori umani.
Serve a:
- guidare l’utente nell’inserimento corretto dei dati;
- evitare errori logici o formali (es. date impossibili, numeri fuori soglia, formati errati);
- mantenere l’integrità del database;
- personalizzare i messaggi di errore per rendere l’esperienza più chiara e professionale.
Microsoft Access offre tre principali modalità di convalida:
- Convalida a livello di campo
Si applica a un singolo campo. Ad esempio, puoi impostare che il campo "Età" accetti solo valori maggiori di 18 (>=18
) o che il campo "Email" rispetti un formato valido. - Convalida a livello di record
Permette di confrontare più campi tra loro. Ad esempio, puoi stabilire che la "Data di fine" sia sempre successiva alla "Data di inizio" ([DataFine] >= [DataInizio]
). - Convalida nelle maschere
Utilizza la proprietà "Valido se" dei controlli per applicare regole direttamente nell’interfaccia utente. È utile quando la regola riguarda solo l’uso della maschera e non la struttura della tabella.
16. VALORI PREDEFINITI
In Microsoft Access, un valore predefinito è un'impostazione che consente di inserire automaticamente un dato iniziale in un campo di una tabella o in un controllo di una maschera, ogni volta che viene creato un nuovo record. Questo valore viene visualizzato senza che l’utente debba digitare nulla, semplificando l’inserimento dei dati e riducendo il rischio di errori o dimenticanze.
Il valore predefinito è utile quando:
- un campo ha quasi sempre lo stesso contenuto (es. “Italia” come paese);
- si vuole accelerare la compilazione dei dati;
- si desidera standardizzare l’inserimento;
- si vogliono evitare campi vuoti o dimenticati.
Può essere definito:
- nella tabella, tramite la visualizzazione struttura, impostando la proprietà “Valore predefinito” del campo;
- nella maschera, impostando la proprietà “Valore predefinito” del controllo (es. casella di testo, casella combinata, ecc.).
17. OGGETTI COLLEGATI
In Microsoft Access, un oggetto collegato è un elemento del database (come una tabella, una query, una maschera o un report) che non risiede fisicamente nel file Access, ma è collegato a una fonte esterna. Questo significa che Access può visualizzare e manipolare dati provenienti da un altro database Access, da Excel, da SQL Server, da SharePoint, da file di testo o da altre fonti ODBC, senza importarli direttamente nel file corrente.
Gli oggetti collegati permettono di:
- lavorare su dati esterni mantenendo il file Access leggero;
- sincronizzare automaticamente le modifiche tra Access e la fonte esterna;
- integrare sistemi diversi (es. Access + SQL Server + Excel);
- evitare duplicazioni e ridondanze nei dati;
- centralizzare la gestione dei dati, mantenendo Access come interfaccia utente.
Gli oggetti collegati possono essere:
- Tabelle collegate: Access mostra i dati di una tabella esterna come se fosse locale, ma ogni modifica avviene direttamente sulla fonte originale.
- Query collegate: possono essere basate su tabelle esterne o su database remoti.
- Componenti esterni: come calendari, gestori PDF, viste ad albero, integrati tramite ActiveX o OCX, spesso acquistati da terze parti e programmati in VBA.
18. BACKUP
Il backup in Microsoft Access è il processo di creazione di una copia di sicurezza del database, utile per proteggere i dati da perdite accidentali, errori umani, guasti hardware o corruzione del file. In pratica, è una misura preventiva che consente di ripristinare il database in uno stato precedente, garantendo la continuità operativa e la sicurezza delle informazioni.
Effettuare regolarmente il backup di un database Access è fondamentale per:
- Protezione dai guasti: consente di recuperare i dati in caso di problemi tecnici.
- Recupero da errori umani: permette di annullare modifiche errate o cancellazioni involontarie.
- Conformità normativa: in molti settori, è obbligatorio mantenere copie di sicurezza per garantire la protezione dei dati.
- Tracciabilità delle versioni: aiuta a mantenere uno storico delle modifiche.
Backup manuale
Access offre una funzione integrata per creare backup:
- Apri il database.
- Vai su File > Salva con nome.
- Seleziona Backup del database.
- Scegli la posizione e il nome del file.
- Salva: il file verrà salvato con data e ora nel nome per facilitarne l’identificazione.
Backup automatico
È possibile automatizzare il processo usando:
- Macro o codice VBA: per eseguire backup a intervalli regolari o alla chiusura del database.
- Servizi di terze parti: software esterni o soluzioni cloud che eseguono backup programmati, spesso con funzionalità aggiuntive come compressione e crittografia.
19. SICUREZZA
La sicurezza in Microsoft Access è l’insieme di strategie, impostazioni e strumenti che permettono di proteggere i dati contenuti nel database da accessi non autorizzati, modifiche accidentali, attacchi informatici e violazioni della privacy. In un ambiente aziendale o didattico, la sicurezza non è solo una buona pratica: è una necessità operativa e normativa, soprattutto in conformità con regolamenti come il GDPR 2016/679 e standard come ISO/IEC 27001:2022.
Obiettivi
Strumenti
1. Protezione con password
Access consente di crittografare il database con una password. Questo impedisce l’apertura del file da parte di utenti non autorizzati.
File > Informazioni > Crittografa con Password
2. Autorizzazioni utente
È possibile configurare gruppi e utenti con permessi specifici su tabelle, query, maschere e report.
Strumenti Database > Sicurezza > Autorizzazioni Utente e Gruppo
3. Crittografia dei dati
Oltre alla password, Access può crittografare l’intero contenuto del database per proteggerlo anche se il file viene copiato o trasferito.
4. Gestione delle macro e del codice VBA
Le macro possono rappresentare un rischio se non controllate. Access consente di disattivare le macro non firmate o di limitarne l’esecuzione.
File > Opzioni > Centro protezione > Impostazioni macro
5. Percorsi attendibili
Salvare il database in una cartella considerata “attendibile” evita messaggi di avviso e garantisce l’esecuzione sicura del contenuto.
Supporto Microsoft: Decidere se considerare attendibile un database
6. Log accessi e operazioni
È possibile registrare ogni accesso e ogni operazione effettuata dagli utenti, creando un sistema di audit interno.
Log accessi, log operazioni, compilazione in ACCDE/MDE
20. NORMALIZZAZIONE
La normalizzazione è un processo fondamentale nella progettazione di database relazionali, come quelli creati in Microsoft Access. Consiste nell’organizzare i dati in tabelle strutturate e collegate tra loro, seguendo regole precise che mirano a eliminare la ridondanza, evitare incoerenze e migliorare l’integrità dei dati.
In parole semplici, normalizzare significa dividere i dati in tabelle più piccole, ciascuna dedicata a un solo tipo di informazione, e collegarle tramite relazioni. Questo rende il database più efficiente, più facile da aggiornare e meno soggetto a errori.
Importanza
Le Forme Normali: i livelli della normalizzazione
Prima Forma Normale (1NF)
- Ogni campo contiene valori atomici (non divisibili).
- Non ci sono gruppi ripetuti o liste in un singolo campo.
- Ogni riga è univoca, identificata da una chiave primaria.
Esempio: se un campo contiene più numeri di telefono separati da virgole, non è in 1NF. Occorre creare una tabella separata per i numeri.
Seconda Forma Normale (2NF)
- La tabella è già in 1NF.
- Ogni campo non chiave dipende interamente dalla chiave primaria.
- Elimina le dipendenze parziali.
Esempio: se il prezzo di un prodotto dipende solo da una parte della chiave composta, va spostato in una tabella dedicata ai prodotti.
Terza Forma Normale (3NF)
- La tabella è già in 2NF.
- I campi non chiave dipendono solo dalla chiave primaria, non da altri campi non chiave.
- Elimina le dipendenze transitive.
Esempio: se il telefono della scuola dipende dal nome della scuola e non dallo studente, va spostato in una tabella separata.
Panoramica
Struttura e funzionalità delle tabelle
Le tabelle sono il fondamento di ogni database creato con Microsoft Access. Rappresentano strutture organizzate in righe e colonne, dove ogni riga è un record e ogni colonna è un campo. Ogni campo ha un tipo di dato specifico (testo, numero, data, valuta, ecc.) che ne determina il contenuto e il comportamento. Le tabelle permettono di archiviare, gestire e analizzare grandi quantità di dati in modo strutturato e coerente. È possibile definire chiavi primarie per identificare univocamente ogni record, e impostare indici per velocizzare le ricerche. Access consente anche di applicare regole di validazione per garantire l’integrità dei dati inseriti, evitando errori o duplicazioni.
Le tabelle possono essere create manualmente oppure generate automaticamente da importazioni di dati esterni (Excel, CSV, SQL Server, ecc.). Una volta definite, diventano la base per la creazione di maschere, query e report, strumenti che permettono di visualizzare, filtrare, analizzare e stampare i dati in modo personalizzato. Access supporta anche campi calcolati, allegati, collegamenti ipertestuali e formati personalizzati, rendendo le tabelle estremamente versatili. Inoltre, è possibile stabilire relazioni tra tabelle diverse, creando un sistema relazionale che consente di collegare informazioni provenienti da più fonti. Grazie all’interfaccia grafica intuitiva, anche gli utenti meno esperti possono costruire database funzionali e professionali, adatti a gestire progetti personali, aziendali o didattici.
Creazione di relazioni tra tabelle
Creare relazioni tra tabelle in Microsoft Access è un passaggio fondamentale per costruire un database relazionale efficiente e coerente. Le relazioni permettono di collegare i dati tra più tabelle tramite campi comuni, come ad esempio un codice cliente o un ID prodotto. Questo collegamento consente di evitare la duplicazione delle informazioni e di mantenere l’integrità dei dati. Per iniziare, si accede alla sezione “Strumenti database” e si seleziona “Relazioni”. Da qui si possono aggiungere le tabelle coinvolte e trascinare il campo chiave primaria di una tabella sul campo corrispondente dell’altra. Access apre una finestra di dialogo dove è possibile confermare i campi coinvolti e attivare l’integrità referenziale, che impedisce modifiche incoerenti tra le tabelle collegate.
Una volta creata la relazione, Access la rappresenta graficamente con una linea che collega le tabelle. È possibile definire relazioni di tipo uno-a-molti (la più comune), uno-a-uno o molti-a-molti (che richiede una tabella di giunzione). Le relazioni facilitano la creazione di query complesse, maschere dinamiche e report dettagliati, poiché permettono di estrarre e combinare dati da più fonti in modo automatico. Inoltre, grazie alle opzioni di aggiornamento ed eliminazione a catena, è possibile gestire le modifiche in modo sincronizzato tra le tabelle correlate. In sintesi, le relazioni sono uno strumento potente per strutturare un database Access in modo logico, scalabile e professionale.
ESERCIZIO
Obiettivo: Progettare e creare la tabella Clienti pronta per l’uso in
relazioni 1‑a‑molti.
Scenario: Piccolo CRM: devi memorizzare anagrafiche clienti con dati di
contatto e data di iscrizione. Passaggi operativi (10 azioni)
Apri il database di lavoro in Access.
Vai a Crea ▸ Struttura tabella.
Rinomina la tabella in Clienti.
Inserisci i campi: IDCliente, Nome, Cognome, Email, Telefono, DataIscrizione,
Attivo.
Imposta IDCliente come Autonumerazione e definiscilo Chiave primaria.
Imposta Email come Breve testo (lunghezza 254) e Telefono come Breve testo
(senza maschere per ora).
Imposta DataIscrizione come Data/ora e Attivo come Sì/No.
Compila Descrizione dei campi per documentare lo scopo.
Passa a Visualizzazione Foglio dati e inserisci 5 record realistici.
Salva la tabella.
Pulsanti/Funzionalità da usare: Crea ▸ Struttura tabella, Progettazione
tabella, Imposta chiave primaria, Visualizzazione Foglio dati, Salva.
Criteri di riuscita: La tabella Clienti salva correttamente i 5 record, con
IDCliente univoco e campi coerenti.
Domande di autovalutazione: I campi coprono tutti i requisiti minimi? C’è
ambiguità nei nomi? Sono previste estensioni future (es. indirizzo)?
Riepilogo: Hai creato una tabella solida, documentata e testata con dati
realistici.
ILLUSTRAZIONE PASSAGGI ESERCIZIO
Quiz (20 domande)
Qual è lo scopo principale di una tabella in Access?
In visualizzazione Struttura, cosa definisci per primo?
Qual è la vista migliore per inserire rapidamente dati di prova?
Per garantire un record univoco, cosa imposti?
Per documentare il significato di un campo, cosa usi?
Qual è un buon criterio per nominare i campi?
Quando conviene usare Autonumerazione?
Come eviti ambiguità in progettazione?
Dove abiliti proprietà come 'Indicizzato'?
Come testi la tabella appena creata?
Se prevedi relazioni 1‑a‑molti, cosa devi preparare?
Come riduci errori in inserimento dati?
Quando usare 'Breve testo' invece di 'Numero'?
A cosa serve 'Compatta e ripristina'?
Cosa NON va in una tabella ben progettata?
Come prepari future estensioni?
Dove crei relazioni grafiche?
Per un elenco 'Stato' coerente, cosa usi?
Come rinomini correttamente una tabella?
Cosa salvi sempre a fine progettazione?
Panoramica
I formati dei campi
Testo breve. Fino a 255 caratteri. Ideale per nomi, codici, descrizioni brevi.
Testo lungo (Memo). Fino a 65.536 caratteri. Utile per note, commenti, descrizioni estese.
Numero. Per dati numerici. Può essere configurato come intero, decimale, singolo, doppio, ecc.
Data/Ora. Per date e orari. Supporta formati come data breve, lunga, ora, ecc.
Valuta. Per importi monetari. Include simboli di valuta e separatori decimali.
Contatore (AutoNumber). Genera automaticamente un numero univoco per ogni record. Spesso usato come chiave primaria.
Sì/No (Booleano). Valori logici: vero/falso, sì/no, attivo/disattivo.
Oggetto OLE. Per incorporare oggetti come immagini, fogli Excel, documenti Word.
Allegato. Permette di allegare file (immagini, PDF, ecc.) direttamente nel record.
Collegamento ipertestuale. Per URL, email, percorsi di file. Cliccabile direttamente.
Calcolato. Campo che esegue calcoli basati su altri campi (es. somma, concatenazione).
Ricerca guidata. Crea un menu a discesa basato su una tabella o elenco di valori. Non è un vero formato, ma una modalità di input.
I formati numerici
Byte. Intero da 0 a 255InteroDa -32.768 a 32.767
Intero lungo. Da -2.147.483.648 a 2.147.483.647
Singolo. Numero decimale a precisione singola
Doppio. Numero decimale a precisione doppia
Decimale. Precisione fino a 28 cifre decimali
ESERCIZIO
Esercizio — Campi
Obiettivo: Definire correttamente i campi della tabella Prodotti con tipi e
formati coerenti.
Scenario: Catalogo prodotti con prezzo e disponibilità.
Passaggi operativi (10 azioni)
Crea la tabella Prodotti in Struttura.
Aggiungi IDProdotto (Autonumerazione, PK).
Aggiungi NomeProdotto (Breve testo, 100).
Aggiungi Categoria (Breve testo, 50).
Aggiungi PrezzoUnitario (Valuta).
Aggiungi Giacenza (Numero intero lungo).
Aggiungi DataUltimoCarico (Data/ora).
Imposta Valore predefinito Giacenza = 0.
Definisci Formato prezzo con due decimali.
Inserisci 5 righe di esempio e salva.
Pulsanti/Funzionalità: Proprietà del campo, Formato, Valore predefinito,
Salva.
Criteri: Tutti i campi hanno tipo corretto; prezzo e giacenza si comportano
come atteso.
Autovalutazione: Ci sono campi derivabili da query? Le lunghezze testo sono
proporzionate?
Riepilogo: I campi supportano input, calcoli e reporting senza ambiguità.
3) Esercizio — Record
Obiettivo: Inserire, modificare e validare record completi nella tabella
Ordini.
Scenario: Creazione di 3 ordini con dati essenziali. [modulo_acc...oni_upload]
Passaggi operativi (10 azioni)
Crea Ordini (IDOrdine PK autonumerico).
Aggiungi DataOrdine (Data/ora), Stato (Breve testo), Totale (Valuta).
Passa a Foglio dati.
Inserisci tre record con date diverse.
Aggiorna Stato (es. “In lavorazione”, “Spedito”).
Imposta Totale con due decimali.
Correggi un errore volontario (es. testo in Totale) per verificare l’errore.
Annulla e ripristina il valore corretto.
Ordina per DataOrdine.
Salva.
ILLUSTRAZIONE PASSAGGI ESERCIZIO
Quiz (20 domande)
Quale tipo dati usare per il campo 'Email'?
Quale tipo scegliere per un campo 'Note' molto lungo?
Quale tipo assegni a 'PrezzoUnitario'?
Quale tipo per 'Giacenza' (magazzino)?
Quale tipo per 'DataOrdine'?
Come ottieni un ID univoco automatico?
Come proponi un valore iniziale all'inserimento?
Come forzi un formato di input (es. telefono)?
Come eviti omonimie su Email?
Dove formatti la visualizzazione (es. data, valuta)?
Tipo per alta precisione decimale?
Come rendere cliccabili gli URL?
Come archiviare file dentro il record?
Come creare una lista a discesa da tabella?
Come gestire assenza di valore?
Differenza tra Null e stringa vuota?
Come dimensioni correttamente testi?
Dove definisci regole su un singolo campo?
Come mostri un avviso su errore input?
Come garantire che 'Email' sia obbligatoria?
Panoramica
Chiavi interne: l'identificatore unico dei record
In Microsoft Access, la chiave interna
(nota anche come chiave primaria) è un campo o un insieme di
campi che identifica univocamente ogni record all’interno di
una tabella. È il pilastro dell’organizzazione dei dati: nessun record può avere
lo stesso valore nella chiave primaria di un altro. Questo garantisce che ogni
elemento sia distinto e facilmente rintracciabile. Il campo più usato come
chiave interna è spesso un contatore (AutoNumber), che genera
automaticamente un numero progressivo per ogni nuovo record. Tuttavia, è
possibile usare anche campi come codici fiscali, matricole, o altri
identificatori univoci già esistenti. La chiave interna è fondamentale per
stabilire relazioni tra tabelle. Ad esempio, in una tabella
“Clienti”, il campo IDCliente
può essere la chiave primaria. Questo
campo verrà poi utilizzato in altre tabelle (come “Ordini”) per collegare i
dati. Access consente di impostare la chiave interna direttamente nella
visualizzazione struttura della tabella, selezionando il campo e cliccando
sull’icona della chiave. È importante che il campo scelto non contenga valori
duplicati né vuoti. In caso contrario, Access impedirà l’impostazione della
chiave. Una buona progettazione del database parte proprio dalla scelta corretta
della chiave interna, che deve essere stabile, semplice e non soggetta a
modifiche frequenti.
Chiavi esterne: il ponte tra le tabelle
La chiave esterna è un campo
che si trova in una tabella e che riferisce alla chiave interna
di un’altra tabella. Serve a collegare logicamente i dati tra
tabelle diverse, creando una struttura relazionale. Ad esempio, nella tabella
“Ordini”, il campo IDCliente
è una chiave esterna che punta alla
chiave interna IDCliente
della tabella “Clienti”. Questo
collegamento permette di sapere a quale cliente appartiene ogni ordine, senza
dover ripetere tutte le informazioni del cliente in ogni record. Le chiavi
esterne sono essenziali per mantenere la coerenza dei dati.
Access consente di applicare l’integrità referenziale, una
regola che impedisce di inserire valori nella chiave esterna che non esistono
nella tabella di riferimento. Inoltre, si possono attivare opzioni come
aggiornamento a catena (se cambia il valore della chiave interna, si
aggiorna anche la chiave esterna) e eliminazione a catena (se
si elimina un record nella tabella principale, vengono eliminati anche quelli
collegati). Le chiavi esterne non devono essere univoche, perché possono
ripetersi: ad esempio, più ordini possono appartenere allo stesso cliente. In
sintesi, le chiavi esterne sono il meccanismo che consente a Access di gestire
dati distribuiti in più tabelle in modo ordinato, efficiente e relazionale.
ESERCIZIO
Chiave primaria
Obiettivo: Impostare PK stabile e significativa su Clienti e verificarne
l’univocità.
Passaggi operativi (10 azioni)
Apri Clienti in Struttura.
Seleziona IDCliente.
Clic Chiave primaria.
Tenta di inserire un record duplicato: verifica che l’ID non si duplichi.
Duplica Nome/Cognome per vedere che non influenzano l’univocità.
Attiva Indicizzato = Sì (No duplicati) su Email.
Prova a inserire due email uguali: osserva l’errore.
Ripristina email univoche.
Compatta e ripristina database (opzionale).
Salva.
Pulsanti/Funzionalità: Chiave primaria, Indicizzato, Compatta e ripristina.
Criteri: PK impostata, email unica, nessun duplicato possibile.
Autovalutazione: La PK è davvero stabile nel tempo?
Riepilogo: PK + indice univoco proteggono l’identità dei record.
Chiave esterna
Obiettivo: Creare OrdiniDettaglio con FK verso Ordini e Prodotti.
Passaggi operativi (10 azioni)
Crea OrdiniDettaglio (IDDettaglio PK).
Aggiungi IDOrdine (Numero intero lungo).
Aggiungi IDProdotto (Numero intero lungo).
Aggiungi Quantità (Numero), PrezzoUnitario (Valuta).
Apri Strumenti database ▸ Relazioni.
Trascina Ordini.IDOrdine → OrdiniDettaglio.IDOrdine.
Trascina Prodotti.IDProdotto → OrdiniDettaglio.IDProdotto.
Spunta Applica integrità referenziale.
(Opz.) Spunta Aggiorna campi correlati a catena.
Salva layout relazioni.
Pulsanti/Funzionalità: Relazioni, Applica integrità referenziale, Crea
relazione.
Criteri: Non si possono inserire dettagli senza ordine/prodotto validi.
Autovalutazione: Servono indici su entrambe le FK?
Riepilogo: FK + IR garantiscono coerenza tra tabelle collegate.
ILLUSTRAZIONE PASSAGGI ESERCIZIO
Quiz (20 domande)
Qual è lo scopo della chiave primaria (PK)?
Quale caratteristica deve avere la PK?
Scelta tipica per PK tecnica?
Quando usare una PK naturale?
Cos'è una chiave composta?
A cosa serve la chiave esterna (FK)?
La FK può ripetersi?
Cosa garantisce l'integrità referenziale sulla FK?
Cosa fa l'aggiornamento a catena?
Cosa fa l'eliminazione a catena?
Dove è utile un indice su FK?
La PK dovrebbe cambiare spesso?
Quando è ammesso FK Null?
Come riduci duplicazioni?
Come convalidi coerenza tra tabelle?
Se la PK non è unica, cosa indica?
Come documenti PK/FK?
In migrazione dati, in che ordine carichi?
Come testi PK/FK?
In tabella ponte M‑a‑M cosa usi?
Panoramica
Relazioni tra tabelle: il cuore del database relazionale
In Microsoft Access, le relazioni sono il meccanismo che consente di collegare logicamente i dati tra più tabelle. Ogni tabella può contenere informazioni specifiche (es. clienti, ordini, prodotti), ma è grazie alle relazioni che queste informazioni possono dialogare tra loro. Una relazione si basa su campi comuni tra due tabelle, solitamente una chiave primaria da una parte e una chiave esterna dall’altra. Questo collegamento permette di evitare la duplicazione dei dati e di mantenere una struttura ordinata e scalabile. Le relazioni si creano nella vista “Relazioni” di Access, dove è possibile trascinare il campo da una tabella all’altra e definire il tipo di relazione.
I tipi principali sono:
-
Uno-a-molti: il più comune, dove un record in una tabella corrisponde a più record in un’altra (es. un cliente con più ordini).
-
Uno-a-uno: meno frequente, usato per separare dati sensibili o estendere una tabella.
-
Molti-a-molti: richiede una tabella di giunzione che contiene le chiavi esterne di entrambe le tabelle principali.
Le relazioni rendono possibile la creazione di query complesse, maschere dinamiche e report dettagliati, poiché Access può combinare i dati in modo automatico e coerente. Una buona progettazione relazionale migliora la gestione del database, riduce gli errori e facilita l’analisi dei dati.
Integrità referenziale: protezione e coerenza dei dati
L’integrità referenziale è una regola fondamentale che garantisce la coerenza dei dati tra tabelle collegate. Quando si crea una relazione in Access, è possibile attivare questa opzione per assicurarsi che i valori inseriti nella chiave esterna di una tabella esistano effettivamente come chiave primaria nella tabella collegata. In pratica, impedisce che si creino ordini per clienti inesistenti o che si colleghino prodotti non registrati. Se si tenta di violare questa regola, Access blocca l’operazione e segnala l’errore.
Oltre alla verifica dei dati, l’integrità referenziale offre due funzionalità aggiuntive:
-
Aggiornamento a catena: se cambia il valore della chiave primaria, Access aggiorna automaticamente tutte le chiavi esterne collegate.
-
Eliminazione a catena: se si elimina un record nella tabella principale, Access elimina anche tutti i record collegati nella tabella secondaria.
Queste opzioni sono utili ma vanno usate con cautela, soprattutto in database complessi. L’integrità referenziale protegge il database da incoerenze, garantisce la validità delle relazioni e facilita la manutenzione nel tempo. In sintesi, è uno strumento essenziale per chi vuole costruire un database Access robusto, affidabile e professionale.
ESERCIZIO
Relazione
Obiettivo: Modellare correttamente relazioni 1‑a‑molti tra Clienti, Ordini,
OrdiniDettaglio.
Passaggi operativi (10 azioni)
Apri Relazioni.
Aggiungi le tre tabelle.
Verifica la relazione Clienti (PK) → Ordini (FK).
Verifica la relazione Ordini (PK) → OrdiniDettaglio (FK).
Imposta Join 1‑a‑molti con IR.
Salva il layout.
Crea una Query di selezione che unisca le tre tabelle.
Mostra Cognome, DataOrdine, NomeProdotto, Quantità.
Esegui la query.
Controlla se i risultati rispettano la cardinalità attesa.
Pulsanti/Funzionalità: Relazioni, Visualizzazione struttura query, Esegui.
Criteri: Le relazioni sono visibili e funzionanti; la query restituisce
righe corrette.
Autovalutazione: Le relazioni coprono tutti i casi d’uso?
Riepilogo: Schema relazionale efficace e verificato.
Integrità referenziale
Obiettivo: Impedire “orfani” in OrdiniDettaglio e testare le cascate.
Passaggi operativi (10 azioni)
In Relazioni, apri Ordini ↔ OrdiniDettaglio.
Spunta Applica integrità referenziale.
(Opz.) Abilita Aggiorna a catena.
Lascia Elimina a catena disabilitato per il test.
Prova a cancellare un Ordine con dettagli esistenti: verifica il blocco.
Abilita Elimina a catena.
Ripeti la cancellazione: verifica l’eliminazione cascata.
Annulla e ripristina backup del file (se presente).
Documenta la scelta finale.
Salva.
Pulsanti/Funzionalità: Relazioni, Applica integrità referenziale, Modifica
relazione.
Criteri: IR applicata; comportamento in cancellazione controllato.
Autovalutazione: Le cascate sono davvero desiderate in produzione?
Riepilogo: IR configurata e verificata con casi reali.
ILLUSTRAZIONE PASSAGGI ESERCIZIO
Quiz (20 domande)
Qual è la relazione più comune nei database?
In quale finestra disegni le relazioni?
Su cosa si basa una relazione corretta?
A cosa serve l'integrità referenziale (IR)?
Quando usare 1‑a‑1?
Come realizzi M‑a‑M?
Effetto 'Aggiorna a catena'?
Effetto 'Elimina a catena'?
Cosa verifichi dopo aver creato le relazioni?
Sintomo di relazione errata?
Come imposti i join corretti in query?
Dove cambi il comportamento di cancellazione?
Come eviti orfani nei dettagli?
Prestazioni relazioni: cosa serve?
Come documenti lo schema?
Relazioni multiple tra stesse tabelle: quando?
Import con IR attiva: come procedi?
Come verifichi la consistenza?
Cosa accade se elimini il padre senza cascata?
Quando NON abilitare la cascata?
Panoramica
Struttura e funzione
Gli indici in Microsoft Access sono strumenti fondamentali per migliorare le prestazioni del database, in particolare quando si effettuano ricerche, ordinamenti o si eseguono query su tabelle con molti record. Un indice funziona in modo simile all’indice di un libro: consente di trovare rapidamente le informazioni senza dover scorrere tutti i dati. In Access, è possibile creare indici semplici (su un singolo campo) o indici composti (su più campi), a seconda delle esigenze. Ad esempio, se si cerca spesso prodotti per categoria, creare un indice sul campo Categoria velocizzerà notevolmente le operazioni. Se invece si filtrano i dati per Categoria e NomeProdotto, un indice composto su entrambi i campi sarà più efficace.
Gli indici si impostano nella visualizzazione struttura della tabella, selezionando il campo desiderato e modificando la proprietà “Indicizzato”. È possibile scegliere tra “Sì (con duplicati)” e “Sì (senza duplicati)”, a seconda che il campo debba contenere valori univoci o meno. L’indice sulla chiave primaria viene creato automaticamente, ma è possibile aggiungerne altri manualmente. È importante sapere che, sebbene gli indici migliorino le prestazioni in lettura, possono rallentare le operazioni di scrittura (inserimento, modifica, eliminazione), poiché Access deve aggiornare anche la struttura dell’indice. Per questo motivo, è consigliabile creare solo gli indici realmente utili, evitando quelli superflui o ridondanti.
Ottimizzazione e gestione
L’uso strategico degli indici è essenziale per mantenere il database Access efficiente e reattivo. Dopo aver creato gli indici, è buona pratica testarne l’efficacia tramite query di selezione che filtrano i dati in base ai campi indicizzati. Se le query risultano sensibilmente più rapide, l’indice è stato ben progettato. In caso contrario, potrebbe essere necessario rivedere la sequenza dei campi nell’indice composto o rimuovere indici inutili. Access offre anche la funzione “Compatta e ripristina”, che riorganizza fisicamente i dati e gli indici, migliorando ulteriormente le prestazioni. Questo strumento è utile soprattutto dopo modifiche strutturali o eliminazioni di record.
Un altro aspetto importante è la documentazione degli indici creati: annotare quali campi sono indicizzati, con quale tipo di indice, e in quali query vengono utilizzati. Questo aiuta a mantenere il controllo sulla struttura del database e a evitare confusione in fase di manutenzione. Infine, è utile porsi domande di autovalutazione, come: L’indice composto è nella giusta sequenza rispetto ai criteri di ricerca? oppure Ci sono indici che non vengono mai utilizzati? In sintesi, gli indici in Access sono strumenti potenti che, se usati con criterio, permettono di ottenere query più rapide, ricerche più efficienti e una gestione dei dati più fluida, con un impatto minimo sulle risorse del sistema.
ESERCIZIO
Obiettivo: Migliorare le prestazioni delle ricerche su
Prodotti con indici mirati.
Passaggi operativi (10 azioni)
Apri Prodotti in Struttura.
Crea indice su Categoria.
Crea indice composito su (Categoria, NomeProdotto).
Salva.
Crea una Query filtrando per Categoria.
Esegui e misura tempi empirici (prima/dopo).
Rimuovi eventuali indici ridondanti.
Compatta il database.
Riesegui la query.
Documenta risultati.
Pulsanti/Funzionalità: Indici, Query di selezione, Compatta e ripristina.
Criteri: Ricerca sensibilmente più veloce; nessun indice superfluo.
Autovalutazione: L’indice composito è nella giusta sequenza?
Riepilogo: Indici mirati = query più rapide con minimo overhead.
ILLUSTRAZIONE PASSAGGI ESERCIZIO
Quiz (20 domande)
A cosa serve un indice?
Su quale campo esiste sempre un indice?
Cosa consente un indice con duplicati?
Cosa impone un indice senza duplicati?
Quando usare indice composto?
Ordine dei campi in indice composto: criterio?
Effetto collaterale degli indici?
Quando evitare indici?
Come valuti l'efficacia di un indice?
Manutenzione suggerita?
Indici su FK: utilità?
Troppi indici causano?
Indici su campi calcolati?
Come documenti gli indici?
Ricerca testuale generica: dove indicizzare?
Duplicati indesiderati: soluzione?
Intervalli di date: dove indicizzare?
Campo indicizzato ma aggiornato spesso: che fare?
Indici e report ordinati: beneficio?
Quando rimuovere un indice?
Panoramica
Interfaccia per l'inserimento e la consultazione dati
Le maschere in Microsoft Access sono strumenti fondamentali per migliorare l’interazione tra l’utente e il database. Rappresentano una interfaccia grafica che consente di visualizzare, inserire, modificare e navigare tra i dati contenuti nelle tabelle, in modo più intuitivo rispetto alla visualizzazione diretta dei record. Le maschere sono particolarmente utili quando si vuole semplificare l’esperienza dell’utente, evitando che debba interagire con la struttura tecnica del database. Ogni maschera può essere personalizzata con campi, pulsanti, caselle di testo, menu a discesa, immagini e controlli logici, rendendo l’ambiente di lavoro più ordinato e funzionale. Access consente di creare maschere in diversi modi: manualmente in visualizzazione struttura, tramite la Creazione guidata maschere, oppure con la visualizzazione Layout, che permette di vedere in tempo reale l’aspetto della maschera. Le maschere possono essere basate su una tabella, una query o anche su più origini dati collegate. È possibile impostare filtri, ordinamenti, formati condizionali e eventi (come clic su pulsanti o modifiche di campo) per rendere la maschera interattiva e dinamica. Inoltre, le maschere possono essere protette con livelli di accesso, limitando la modifica dei dati solo a determinati utenti. In ambito aziendale, le maschere sono spesso utilizzate per gestire moduli di registrazione, ordini, inventari, schede clienti e report personalizzati.
I vantaggi delle maschere
Oltre alla funzione di inserimento dati, le maschere in Access offrono numerose funzionalità avanzate che le rendono strumenti potenti per la gestione del database. È possibile creare sottomaschere, ovvero maschere annidate che mostrano dati correlati (ad esempio, una maschera cliente con una sottomaschera degli ordini effettuati). Questo consente di visualizzare e modificare più livelli di informazioni in un’unica interfaccia. Le maschere possono anche contenere controlli calcolati, che eseguono operazioni matematiche o logiche direttamente nei campi visualizzati, senza dover ricorrere a query separate. Inoltre, è possibile integrare macro e codice VBA per automatizzare azioni, validare dati o personalizzare il comportamento della maschera. Dal punto di vista dell’usabilità, le maschere migliorano la precisione dell’inserimento dati, riducono gli errori e rendono il database più accessibile anche a utenti non esperti. In contesti professionali, le maschere sono spesso progettate con layout coerenti, colori distintivi, etichette chiare e messaggi di conferma, per garantire un’esperienza utente fluida e controllata. Possono essere utilizzate anche per la navigazione tra record, la visualizzazione di report, o come dashboard interattive per monitorare indicatori chiave. In sintesi, le maschere in Access non sono solo strumenti di input, ma veri e propri ambienti di lavoro personalizzati, che trasformano un database tecnico in un’applicazione pratica, efficiente e professionale.
ESERCIZIO
Obiettivo: Creare una maschera di inserimento guidato per
Clienti con controlli essenziali.
Passaggi operativi (10 azioni)
Crea ▸ Maschera basata su Clienti.
Passa a Struttura maschera.
Disporre i campi in due colonne.
Aggiungi Pulsante “Salva” (macro SalvaRecord).
Aggiungi Pulsante “Nuovo” (macro NuovoRecord).
Imposta Ordine di tabulazione logico.
Aggiungi Controllo per Email con suggerimento.
Abilita Validazione base (campi obbligatori).
Prova l’inserimento di un record.
Salva come F_Clienti.
Pulsanti/Funzionalità: Maschera automatica, Struttura, Pulsante, Macro
azione, Ordine tabulazione.
Criteri: Inserimento fluido e senza errori; pulsanti funzionano.
Autovalutazione: L’utente finale capisce cosa fare senza istruzioni?
Riepilogo: La maschera riduce errori e accelera l’input.
Quiz (20 domande)
A cosa serve principalmente una maschera?
Quale controllo consente scelta da elenco relazionato?
Come migliori il flusso di input?
Come previeni errori in maschera?
Per elenco+detaglio in un'unica UI?
Come mostri dati correlati?
Come aggiungi 'Salva' e 'Nuovo' senza VBA?
Come blocchi modifiche indesiderate?
Fonte dati corretta per una maschera?
Quale vista per più record?
Dove definisci suggerimenti (tooltip)?
Come filtri direttamente da UI?
Eventi tipici utili?
Navigazione tra record: strumenti?
Cos'è una maschera di navigazione?
Convalida solo per UI?
Prestazioni maschera: come migliorarle?
Layout coerente: cosa aiuta?
Come mostri messaggi all'utente?
Versione 'sola lettura': come?
Panoramica
Motori di ricerca e analisi dei dati
Le query in Microsoft Access sono strumenti potenti che permettono di interrogare, filtrare, calcolare e analizzare i dati contenuti nelle tabelle del database. Rappresentano il cuore dell’elaborazione dei dati, poiché consentono di estrarre solo le informazioni rilevanti in base a criteri specifici. Una query può essere paragonata a una domanda che si pone al database: “Mostrami tutti i prodotti della categoria X”, oppure “Quali clienti hanno effettuato ordini superiori a 500 euro?”. Access risponde elaborando i dati e restituendo solo quelli che soddisfano le condizioni impostate. Le query possono essere create manualmente in visualizzazione struttura, oppure tramite la Creazione guidata query, che semplifica il processo per utenti meno esperti.
Esistono diversi tipi di query, ciascuna con una funzione specifica:
-
Query di selezione: per visualizzare e filtrare i dati.
-
Query di aggiornamento: per modificare in massa i valori di uno o più campi.
-
Query di accodamento: per aggiungere record a una tabella esistente.
-
Query di eliminazione: per rimuovere record in base a criteri.
-
Query di creazione tabella: per generare nuove tabelle a partire da dati filtrati.
-
Query con parametri: che chiedono all’utente di inserire un valore al momento dell’esecuzione.
-
Query con calcoli: che eseguono operazioni matematiche, logiche o statistiche sui dati.
Le query possono anche essere basate su più tabelle collegate tramite relazioni, permettendo di incrociare dati e ottenere risultati complessi e dettagliati.
I vantaggi del queries
Oltre alla semplice estrazione di dati, le query in Access offrono funzionalità avanzate che le rendono strumenti indispensabili per la gestione e l’analisi del database. È possibile utilizzare espressioni, funzioni aggregate (come Somma, Media, Conteggio), campi calcolati, formati condizionali e ordinamenti personalizzati. Le query possono essere salvate e riutilizzate, integrate in maschere e report, oppure utilizzate come base per azioni automatizzate tramite macro. Inoltre, Access consente di creare query SQL, per chi ha familiarità con il linguaggio strutturato, offrendo un controllo ancora più preciso sull’elaborazione dei dati.
Dal punto di vista pratico, le query migliorano la produttività, riducono gli errori manuali e permettono di prendere decisioni basate su dati concreti. In ambito aziendale, sono utilizzate per generare report periodici, monitorare vendite, analizzare comportamenti dei clienti, gestire inventari e molto altro. In ambito didattico, le query aiutano a comprendere la logica dei database relazionali e a sviluppare competenze di analisi. In sintesi, le query in Access non sono solo strumenti tecnici, ma veri e propri motori di intelligenza del database, capaci di trasformare dati grezzi in informazioni utili, strutturate e pronte all’uso.
ESERCIZIO
Obiettivo:
Costruire una query parametriche per elenco ordini per cliente e data.
Passaggi operativi (10 azioni)
Crea ▸ Struttura query con Clienti e Ordini.
Aggiungi campi Cognome, DataOrdine, Totale.
In Criteri di Cognome, inserisci [Cognome?].
In Criteri di DataOrdine, inserisci Between [Dal?] And [Al?].
Ordina per DataOrdine.
Esegui la query.
Fornisci un cognome esistente e un intervallo date.
Verifica i risultati.
Salva la query come Q_OrdiniPerClientePeriodo.
Esporta risultati in Excel (opzionale).
Pulsanti/Funzionalità: Struttura query, Parametri, Esegui, Ordinamento,
Esporta.
Criteri: Parametri funzionanti; risultati corretti per periodo e cliente.
Autovalutazione: La query gestisce assenza di risultati?
Riepilogo: Query parametriche = flessibilità per l’utente finale.
Quiz (20 domande)
Cosa fa una query di selezione?
Cosa caratterizza una query parametrica?
Cosa fa una query di aggiornamento?
Cosa fa una query di accodamento?
Cosa fa una query di eliminazione?
Cosa fa una make‑table?
Come ordini i risultati in griglia?
Dove fai calcoli su dati?
Criterio per data tra due valori?
Filtro per testo parziale?
Come definisci join corretti?
Come migliori prestazioni?
Come nomini e salvi una query?
Parametri non riconosciuti: primo controllo?
Buona pratica per query azione?
Come gestisci Null nei calcoli?
Come ottieni riepiloghi per gruppo?
Come elimini duplicati nei risultati?
Come gestisci più parametri?
Come esporti i risultati?
Panoramica
Presentazione professionale dei dati
I report in Microsoft Access sono strumenti progettati per visualizzare e stampare i dati in modo ordinato, leggibile e professionale. A differenza delle maschere, che servono per l’inserimento e la modifica dei dati, i report sono pensati per la consultazione e la distribuzione delle informazioni. Vengono utilizzati per creare documenti riepilogativi, schede cliente, fatture, elenchi, statistiche, report di vendita e molto altro. Ogni report può essere basato su una tabella o su una query, e può includere intestazioni, piedi di pagina, gruppi di dati, totali, grafici, immagini e formattazioni condizionali. Access offre una Creazione guidata report che semplifica il processo, ma è anche possibile personalizzare ogni elemento manualmente in visualizzazione struttura o layout. La struttura di un report è suddivisa in sezioni: Intestazione report, Intestazione pagina, Dettagli, Piè di pagina pagina e Piè di pagina report. Questa suddivisione consente di organizzare i contenuti in modo logico e coerente. È possibile aggiungere controlli calcolati per eseguire operazioni matematiche (es. somma totale vendite), filtri per mostrare solo determinati record, e ordinamenti per presentare i dati in modo gerarchico. I report possono essere esportati in diversi formati, tra cui PDF, Excel, Word o HTML, facilitando la condivisione con colleghi, clienti o enti esterni. Inoltre, è possibile impostare macro o codice VBA per automatizzare la generazione e la distribuzione dei report, ad esempio via email o su una rete aziendale.
Vantaggi dei reports
I report in Access offrono funzionalità avanzate che li rendono strumenti indispensabili per la presentazione dei dati. È possibile creare report con sottoreport, ovvero report annidati che mostrano dati correlati (es. un report cliente con sottoreport degli ordini effettuati). Questo consente di visualizzare informazioni complesse in un unico documento. I report possono anche includere grafici dinamici, indicatori visivi, colori condizionali e etichette personalizzate, migliorando la leggibilità e l’impatto visivo. In ambito aziendale, i report sono spesso utilizzati per monitorare KPI, analizzare performance, verificare scostamenti e supportare decisioni strategiche. In ambito didattico, sono utili per creare schede di valutazione, statistiche di frequenza, report di attività e documenti di sintesi. Dal punto di vista pratico, i report migliorano la comunicazione dei dati, rendendoli comprensibili anche a chi non ha competenze tecniche. Possono essere progettati per essere stampati, esportati o visualizzati su schermo, adattandosi a diversi contesti operativi. Inoltre, Access consente di automatizzare la generazione periodica dei report, ad esempio su base settimanale o mensile, riducendo il lavoro manuale e garantendo aggiornamenti costanti. In sintesi, i report in Access non sono semplici stampe di dati, ma veri e propri documenti dinamici e professionali, che trasformano le informazioni grezze in contenuti chiari, ordinati e pronti all’uso.
ESERCIZIO
Obiettivo: Generare un report raggruppato con totali per
Ordini per mese.
Passaggi operativi (10 azioni)
Crea ▸ Report su Ordini.
Apri Struttura report.
Aggiungi Raggruppa per Mese(DataOrdine).
Inserisci Somma su Totale per gruppo.
Aggiungi Intestazione con logo (opzionale).
Imposta Formato data in intestazione gruppo.
Applica Formattazione condizionale per evidenziare mesi > soglia.
Anteprima di stampa.
Esporta in PDF.
Salva come R_OrdiniPerMese.
Pulsanti/Funzionalità: Raggruppamento/Ordinamento, Somma, Formattazione
condizionale, Esporta PDF.
Criteri: Report chiaro, totale per mese corretto.
Autovalutazione: Il layout è leggibile a colpo d’occhio?
Riepilogo: Report strutturato = insight immediati.
Quiz (20 domande)
A cosa serve un report in Access?
Quali sono le sezioni tipiche di un report?
Come raggruppi per un campo?
Come calcoli totali per gruppo?
A cosa serve la formattazione condizionale?
Cos'è un sottoreport?
Qual è l'origine dati di un report?
Come verifichi l'impaginazione?
Formato tipico di esportazione?
Cosa inserire in intestazione report?
Dove imposti ordinamento in report?
I campi calcolati in report sono...
Per un layout leggibile cosa aiuta?
Come numeri le pagine?
Come filtri prima di stampare?
Come regoli larghezza e colonne?
Come gestisci dati mancanti?
Come evidenzi KPI?
Come rendi riutilizzabile un report?
Come condividi esternamente?
Panramica
Integrare fonti esterne nel database Access
L’importazione dei dati in Microsoft Access è una funzione essenziale per costruire o arricchire un database partendo da fonti esterne. Access consente di importare dati da una vasta gamma di formati: Excel, CSV, TXT, XML, SharePoint, Outlook, ODBC, SQL Server, e persino da altri database Access. Questa operazione può essere eseguita tramite la scheda “Dati esterni”, dove l’utente può scegliere il tipo di origine e avviare la procedura guidata. Durante l’importazione, Access permette di decidere se creare una nuova tabella, aggiungere i dati a una tabella esistente o semplicemente collegarsi alla fonte esterna senza copiarne i dati. È possibile anche definire il tipo di campo, la chiave primaria e le regole di validazione. Importare correttamente significa anche pulire e preparare i dati prima dell’inserimento: eliminare duplicati, uniformare i formati, correggere errori. Access offre strumenti per visualizzare in anteprima i dati e per gestire eventuali conflitti o conversioni di tipo. Una volta importati, i dati possono essere integrati nel sistema relazionale del database, collegati ad altre tabelle tramite chiavi esterne, e utilizzati in query, maschere e report. L’importazione è particolarmente utile in ambito aziendale e didattico, dove spesso si lavora con dati provenienti da fogli di calcolo, moduli online o sistemi gestionali. In sintesi, importare dati in Access è il primo passo per trasformare informazioni grezze in un sistema strutturato, interrogabile e pronto all’analisi.
Condividere e distribuire le informazioni
L’esportazione dei dati da Microsoft Access consente di condividere le informazioni contenute nel database con altri utenti, sistemi o applicazioni. È possibile esportare tabelle, query, report e persino maschere in diversi formati: Excel, PDF, Word, HTML, TXT, CSV, XML, e anche verso Outlook o SharePoint. Questa operazione si esegue dalla scheda “Dati esterni”, selezionando l’oggetto da esportare e il formato desiderato. Access offre una procedura guidata che permette di scegliere se esportare tutti i dati o solo quelli filtrati, se includere la formattazione, e se salvare le impostazioni per un uso futuro. L’esportazione è utile per creare report stampabili, documenti di sintesi, backup, o per trasferire dati verso altri software di analisi. Un vantaggio dell’esportazione è la possibilità di automatizzare il processo tramite macro o codice VBA, ad esempio per generare e inviare report PDF ogni settimana. Inoltre, esportare in formato Excel o CSV consente di elaborare i dati in ambienti familiari agli utenti, facilitando la collaborazione. È importante però verificare che i dati esportati siano coerenti, completi e privi di errori, soprattutto se destinati a sistemi esterni. In ambito professionale, l’esportazione è spesso usata per fornire dati a clienti, partner o enti pubblici, mentre in ambito didattico può servire per creare materiali di studio o esercitazioni. In sintesi, l’esportazione in Access è uno strumento strategico per distribuire i dati in modo controllato, flessibile e compatibile con altri ambienti di lavoro.
ESERCIZIO
Importazione
Obiettivo: Importare correttamente un file Excel contenente ordini, verificarne la struttura, integrarlo nel database e prepararlo per l’analisi.
Passaggi operativi (10 azioni)
- Apri Access e crea un nuovo database o apri quello esistente.
- Vai alla scheda Dati esterni e seleziona Excel come origine.
- Sfoglia e seleziona il file da importare (es.
Ordini_2025.xlsx
). - Scegli Importa i dati in una nuova tabella nel database corrente.
- Nella procedura guidata, verifica i nomi dei campi e i tipi di dati.
- Imposta una chiave primaria (manuale o automatica).
- Rinomina la tabella importata come
T_OrdiniImportati
. - Apri la tabella in visualizzazione struttura e verifica la coerenza dei dati.
- Crea una query di selezione per visualizzare solo gli ordini validi.
- Salva la query come
Q_OrdiniValidi
e documenta il processo.
Pulsanti / funzionalità coinvolti
- Dati esterni → Importa Excel
- Visualizzazione struttura → Controllo campi
- Query di selezione → Filtro dati
- Proprietà campo → Tipo, indicizzazione, validazione
Esportazione
Obiettivo: Generare un report da una query esistente e esportarlo in formato PDF, pronto per la distribuzione o la stampa.
Passaggi operativi (10 azioni)
Q_OrdiniValidi
o sulla tabella T_OrdiniImportati
.Report_OrdiniValidi.pdf
).R_OrdiniValidi
per usi futuri.Pulsanti/funzionalità coinvolti
- Report → Creazione e modifica
- Formattazione condizionale → Evidenziazione dati
- Esporta PDF/XPS → Generazione file
- Anteprima di stampa → Controllo layout
Quiz (20 domande)
Come importi dati da Excel?
Import vs Collegamento: differenza?
Quando imposti la PK in import?
Come assegni tipi dati corretti in import?
Cosa fai prima dell'import per qualità?
Import di CSV: cosa imposti?
Errori in import: dove li vedi?
Accodare a tabella esistente richiede?
Come esporti un report per condivisione?
Come salvi passaggi di import/export?
Come automatizzi export periodico?
Coerenza con relazioni: ordine di carico?
Formati supportati dall'export?
Esportare solo i record filtrati come?
Verifica post‑import corretta?
Codifica di testo da scegliere?
Date importate male da Excel: rimedio?
Accodamento con campi mancanti: soluzione?
Come documenti il processo?
Reimport periodico: strategia?
Panoramica
Automazione delle attività ripetitive
Le macro in Microsoft Access sono strumenti che permettono di automatizzare operazioni ripetitive o complesse all’interno del database, senza dover scrivere codice VBA. Una macro è composta da una serie di azioni predefinite che vengono eseguite in sequenza, come aprire una maschera, eseguire una query, stampare un report, esportare dati o visualizzare un messaggio. Questo consente di semplificare l’interazione con il database, ridurre gli errori manuali e migliorare l’efficienza operativa. Le macro si creano tramite l’editor grafico accessibile dalla scheda “Crea” → “Macro”, dove ogni azione può essere selezionata da un elenco e configurata con parametri specifici. Access supporta due tipi principali di macro: le macro semplici, che si usano per attività di base (es. aprire una maschera al clic di un pulsante), e le macro incorporate, che si associano direttamente a oggetti come pulsanti, caselle di testo o eventi (es. “Al clic”, “Dopo aggiornamento”). È possibile anche creare macro condizionali, che eseguono azioni solo se si verifica una determinata condizione (es. se il totale supera una soglia, mostra un avviso). Le macro possono essere salvate e riutilizzate, e sono particolarmente utili in ambienti dove l’utente finale non ha competenze di programmazione ma ha bisogno di automatizzare flussi di lavoro. In sintesi, le macro sono il ponte tra la potenza del database e la semplicità d’uso, rendendo Access uno strumento accessibile anche a chi non è sviluppatore.
I vantaggi delle macro
Oltre alle operazioni di base, le macro in Access offrono funzionalità avanzate che permettono di costruire veri e propri flussi logici all’interno del database. È possibile usare azioni come EseguiQuery, ApriReport, ImpostaValore, Messaggio, EsportaPDF, e molte altre, per creare sequenze complesse che reagiscono a input dell’utente o a modifiche nei dati. Le macro possono anche interagire con variabili temporanee, gestire errori (tramite azioni come “GestisciErrore”) e controllare il comportamento di maschere e report in modo dinamico. Questo le rende ideali per creare interfacce interattive, procedure guidate, sistemi di notifica o controlli automatici sui dati. Dal punto di vista pratico, le macro migliorano la produttività, riducono il tempo necessario per eseguire operazioni ripetitive e garantiscono coerenza nei processi. In ambito aziendale, possono essere usate per automatizzare la generazione di report, la validazione dei dati, la gestione degli ordini o la navigazione tra moduli. In ambito didattico, sono utili per creare esercizi interattivi, simulazioni o modelli di flusso. Le macro sono anche un ottimo punto di partenza per chi vuole avvicinarsi alla programmazione VBA, poiché molte azioni macro corrispondono a comandi di codice. In sintesi, le macro in Access sono uno strumento versatile e potente, che trasforma un database statico in un’applicazione dinamica, intelligente e su misura per l’utente.
ESERCIZIO
Obiettivo: Automatizzare l’apertura di una maschera e l’esecuzione di una query filtrata tramite una macro.
Passaggi operativi (10 azioni)
- Apri il database contenente la maschera
MascheraOrdini
e la queryQ_OrdiniValidi
. - Vai alla scheda Crea e seleziona Macro.
- Inserisci l’azione ApriMaschera e
seleziona
MascheraOrdini
. - Aggiungi l’azione EseguiQuery e
seleziona
Q_OrdiniValidi
. - Inserisci un’azione Messaggio per confermare l’avvenuta esecuzione.
- Aggiungi una condizione: Se il numero di record > 50, mostra un messaggio di avviso.
- Salva la macro con nome
M_ApriOrdiniValidi
. - Associa la macro a un pulsante nella maschera principale.
- Testa la macro cliccando sul pulsante.
- Documenta il flusso e verifica che tutte le azioni siano eseguite correttamente.
Pulsanti/funzionalità coinvolti
- Macro → Editor azioni
- ApriMaschera, EseguiQuery, Messaggio
- Condizione → Azioni condizionali
- Proprietà pulsante → Collegamento macro
Quiz (20 domande)
A cosa servono le macro in Access?
Quale azione apre una maschera?
Come esegui una query salvata con macro?
Come mostri un avviso all'utente?
A cosa servono le condizioni in macro?
Cosa sono le macro incorporate?
Sequenza tipica per aprire e filtrare?
Come gestisci errori in macro?
Cosa sono le TempVars?
Dove regoli sicurezza macro?
Come attivi macro da un pulsante?
Come passi parametri a una macro?
Come esporti un report automaticamente?
Come migliori prestazioni delle macro?
Come riusi macro in più punti?
Quando passare al VBA?
Come testi una macro?
Come eseguire azioni all'apertura del DB?
Come integrano macro e moduli?
Come documenti una macro?