Vantaggi dell'utilizzo dei database Access consente di sfruttare appieno il valore dei propri dati. Un database è molto di più di un semplice elenco o tabella. Offre la possibilità di gestire appieno i dati, consentendone il recupero, l'ordinamento, l'analisi, il riepilogo e la creazione di report dei risultati in pochi istanti. È in grado di combinare i dati provenienti da diversi file, evitando così la necessità di immettere due volte le stesse informazioni. Può persino rendere più efficiente e precisa l'immissione dei dati. In questa lezione verranno illustrati alcuni dei vantaggi di un database e verranno presentate le parti più importanti di cui si compone un database. Molto più efficace di un gruppo di elenchi Uno dei vantaggi più importanti offerti da Access è l'eliminazione delle complicazioni correlate all'utilizzo di più elenchi. Si supponga che la segretaria di un'importante associazione ambientalista abbia la necessità di gestire un elenco di volontari per le attività di riciclaggio, un elenco di volontari per l'organizzazione di eventi sociali, un elenco di indirizzi per le etichette delle newsletter, un elenco di soci e così via. Se uno dei soci volontari, incluso in svariati elenchi, cambia il proprio indirizzo di posta elettronica, la segretaria dovrà modificare tutte le occorrenze (il problema va sotto il nome di RIDONDANZA dei dati) dell'indirizzo in ogni elenco in cui compare, con una conseguente notevole perdita di tempo. È sufficiente utilizzare un database ben strutturato per poter apportare la modifica una sola volta. Tutte le relazioni e le dipendenze saranno gestite in modo automatico dal database. Se le voci sono 10 o poco più, è preferibile creare un semplice elenco, ad esempio un foglio di lavoro di Microsoft Excel oppure un elenco puntato o una tabella di Microsoft Word. Se i dati sono più complessi o sono soggetti a frequenti modifiche, un database di Access offre grandi vantaggi. Relazioni tra i dati Le relazioni consentono di collegare dati di singole tabelle per aumentarne l'utilità. Access consente di creare database relazionali, il che significa che i dati, pur essendo memorizzati in varie tabelle separate in base ad argomento o funzione, sono correlati e possono essere riepilogati e raccolti in base alle esigenze specifiche di ogni utente. Anche se nel database di un'associazione gli indirizzi e i numeri di telefono dei soci, gli elenchi di volontari per le attività di riciclaggio e i dati sulla disponibilità dei singoli volontari sono memorizzati separatamente, tali informazioni possono essere riunite in qualsiasi momento nel modo più utile. Ad esempio, è possibile stampare rapidamente un elenco dei volontari per il riciclaggio della carta che hanno dato la propria disponibilità per il sabato successivo insieme ai relativi indirizzi e numeri di telefono aggiornati. Questi due insiemi di dati sono di tipo relazionale, per cui le informazioni di un insieme, ad esempio il nome di Nancy Davolio nell'elenco dei volontari per il riciclaggio, sono associate alle informazioni significative nell'altro insieme di dati, ovvero indirizzo e numero telefonico di Nancy Davolio. Per sfruttare appieno i vantaggi di un database, è fondamentale impostare le tabelle di dati in modo che riflettano gli argomenti e le funzioni associati ai dati. Durante la pianificazione del database, è consigliabile analizzare con attenzione tutti gli scenari possibili per l'immissione dei dati, le ricerche o la creazione di report per riuscire a soddisfare le esigenze più importanti degli utenti. Una pianificazione accurata può offrire notevoli vantaggi a lungo termine. Struttura dei database Gli oggetti sono i componenti più importanti di un database. I database di Access sono costituiti da oggetti. Nelle sezioni successive di questo corso verranno descritti in maggiore dettaglio i quattro oggetti fondamentali elencati di seguito: Tabelle: consentono di memorizzare i dati all'interno di righe e colonne. Tutti i database contengono una o più tabelle. Query: consentono di recuperare ed elaborare i dati. Tramite le query è possibile combinare dati di tabelle diverse, aggiornare i dati ed eseguire calcoli sui dati. Maschere: consentono di controllare l'immissione e la visualizzazione dei dati. Le maschere sono strumenti visuali che semplificano l'utilizzo dei dati. Report: consentono di riepilogare e stampare i dati. I report trasformano i dati delle tabelle e delle query in documenti utili per la distribuzione e lo scambio di informazioni. Organizzare i dati in tabelle Le tabelle consentono di organizzare i dati. Tutti i database in Access contengono almeno una tabella. In questa lezione verrà spiegato da cosa è costituita una una tabella e come strutturare le tabelle in base ai dati. Tabelle: i componenti costitutivi dei database Figura 1 La riga contenente informazioni su United Package è un record. Figura 2 La colonna contenente i numeri di telefono è un campo. Le tabelle contengono i dati e sono quindi i componenti costitutivi di qualsiasi database. Un database dovrebbe contenere una tabella separata per ogni argomento principale, ad esempio i record degli impiegati, gli ordini dei clienti, i metodi di spedizione o i fornitori. È importante evitare di duplicare i dati in più tabelle. La duplicazione dei dati è un errore frequente, che però può essere facilmente evitato con una corretta strutturazione delle tabelle. Ogni tabella contiene righe denominate record e colonne denominate campi. Un record è un insieme di fatti riguardanti una persona, un evento, un CD o qualsiasi altro elemento (oggetto) particolare di proprio interesse. Ad esempio: - i dati personali relativi all'impiego di Nancy Davolio rappresentano un record di una tabella Impiegati; - Speedy Express e relativo numero di telefono rappresentano un record di una tabella Corrieri. Un campo è un singolo tipo di fatto che potrebbe essere applicabile a ogni persona, evento o altro record. CAP, ad esempio, è un campo di una tabella Impiegati. Telefono è un campo di una tabella Corrieri. Campi di dati Se il nome di un campo esistente non è sufficientemente chiaro, è possibile modificarlo. Il tipo di dati di un campo, ad esempio Numerico o Valuta, limita e descrive il genere di informazioni che è possibile immettere in un campo. Per ogni record della tabella viene utilizzato un identificatore univoco denominato chiave primaria. Le proprietà dei campi sono un insieme di caratteristiche che consentono di controllare in maggiore dettaglio i dati. Per i campi del database sono disponibili impostazioni che consentono di stabilire il tipo di dati che è possibile memorizzare, le modalità di visualizzazione dei dati e le operazioni eseguibili sui dati. Si possono ad esempio utilizzare le impostazioni di un campo per assicurarsi che tutti immettano la data di spedizione utilizzando due numeri per il giorno, due numeri per il mese, quattro numeri per l'anno e le barre come carattere di separazione, ad esempio 09/03/2008. È inoltre possibile stabilire che tra la data di immissione e la data di spedizione intercorrano almeno due giorni. Un'importante impostazione dei campi è il tipo di dati, ad esempio Numerico, Testo, Valuta (monetaria) e Data/ora (che in Access rappresentano un unico tipo di dati). Il tipo di dati limita e descrive il genere di informazioni contenute nel campo. Inoltre, determina le operazioni eseguibili su un campo e la quantità di memoria occupata dai dati. Ai campi sono inoltre associate proprietà che consentono di definire ulteriori dettagli per le informazioni immesse nei campi, ad esempio il numero di caratteri, il valore predefinito o una regola di convalida per verificare che i dati soddisfino criteri specifici. Le proprietà semplificano l'immissione e la gestione dei dati. Ogni record è univoco Un impiegato e le informazioni correlate relative all'impiego costituiscono un record della tabella Impiegati. Tali informazioni non devono essere ripetute in altre tabelle o altri record. In un database ben strutturato non esistono due record uguali. Ogni record di ogni tabella deve essere univoco, il che significa che non devono esistere due record identici riguardanti Nancy Davolio all'interno dello stesso database. È possibile, tuttavia, che due impiegati abbiano lo stesso nome. Per consentire di distinguere un record da un altro, le tabelle possono contenere un campo chiave primaria. La chiave primaria è un identificatore, ad esempio un numero di serie, un codice di prodotto o un ID impiegato, univoco per ogni record. È opportuno che i dati prescelti come chiave primaria non siano soggetti a modifiche frequenti. Se lo si desidera, è possibile assegnare automaticamente una chiave primaria numerica che viene incrementata di un'unità ogni volta che si aggiunge un record in una tabella. Il numero associato a un record rimarrà invariato anche se si aggiungono o eliminano altri record prima di tale record. Se si utilizzano chiavi primarie numeriche, per permettere agli utenti di identificare facilmente i record, è possibile associare a ogni chiave primaria un nome descrittivo, ad esempio il nome di un impiegato. In questo modo, gli utenti potranno utilizzare informazioni immediatamente comprensibili anche se nella tabella sottostante è memorizzato un numero. Tutto è relativo Il campo ID impiegato è presente in entrambe le tabelle, come chiave primaria... ...e come chiave esterna. Lo scopo della chiave primaria è quello di distinguere informazioni simili rendendo univoco ogni record. La chiave primaria consente inoltre di combinare le informazioni. Per impostare le relazioni tra le varie tabelle di un database si utilizza infatti una chiave primaria. In questo modo le tabelle possono condividere dati e non è necessario duplicare le stesse informazioni in più tabelle. Le chiavi primarie consentono di sfruttare le grandi potenzialità offerte da un database relazionale, anziché utilizzare più elenchi ripetitivi, che risultano difficili da gestire e non sono in grado di interagire l'uno con l'altro. Quando due tabelle sono correlate, la chiave primaria di una tabella diventa una chiave esterna dell'altra. Si supponga che esistano due tabelle, Impiegati e Ordini. ID impiegato è la chiave primaria della tabella Impiegati e la chiave esterna della tabella Ordini. La tabella Ordini ha una propria chiave primaria rappresentata da ID ordine. Quando Nancy Davolio riceve un ordine, nella tabella Ordini viene immesso il relativo ID impiegato. Poiché questo numero ID fa riferimento ai dettagli riguardanti Nancy Davolio nella tabella Impiegati, non è necessario ripetere i dati di questa impiegata, ad esempio il numero di telefono interno, nella tabella Ordini. Per ulteriori informazioni sulle chiavi primarie, le chiavi esterne e le relazioni tra tabelle, vedere "Organizzare i dati in tabelle". Query Questa query ha estratto i nomi degli impiegati che risiedono in Gran Bretagna da una tabella Impiegati. I dati possono spesso offrire risposte a domande specifiche. Ad esempio: • Quali impiegati risiedono in Gran Bretagna? • In quanti paesi l'ammontare delle vendite è stato superiore a € 250.000 il mese scorso? • In quali scuole la percentuale di promossi è risultata più alta? Le query consentono di fornire una risposta a queste domande attraverso il raggruppamento di dati memorizzati nel database o l'esecuzione di calcoli su tali dati per la restituzione di ulteriori informazioni. Per fornire una risposta a questo tipo di domande, le query recuperano, filtrano, ordinano e assemblano i dati su richiesta. Un'altra importante funzionalità delle query è la possibilità di combinare i dati di più tabelle in una singola visualizzazione. Le query non consentono solo di cercare i dati e visualizzarli, ma possono essere utilizzate anche per elaborare i dati in base alle istruzioni specificate dall'utente, ad esempio per calcolare l'ammontare complessivo delle vendite deducendo i costi di spedizione. Con una query si possono inoltre rimuovere dati specifici, ad esempio i nomi dei soci che non hanno pagato la quota di sottoscrizione per 2 anni di seguito. Si consiglia di prestare attenzione durante l'esecuzione di query che modificano i dati e di eseguire un backup dei dati prima di procedere. Per ulteriori informazioni sulla creazione e l'esecuzione di query, vedere "Query I: Ottenere risposte con le query". Maschere Gli elementi grafici, ad esempio le linee e i rettangoli, sono memorizzati nella struttura della maschera. I dati provengono dai campi della tabella o query sottostante. Un calcolo è il risultato di un'espressione, memorizzata nella struttura della maschera. Il testo descrittivo è memorizzato nella struttura della maschera. Le maschere sono utili per semplificare l'immissione o la visualizzazione dei dati nel database. Sono paragonabili a finestre tramite le quali gli utenti possono utilizzare i dati. Grazie alle maschere è possibile immettere e controllare i dati in modo semplice. I dati immessi in una maschera vengono salvati in una tabella sottostante. Le maschere presentano i dati in un formato chiaro ed efficace, semplificando così l'interpretazione dei dati di una tabella o una query. Possono essere utilizzate anche per creare una schermata iniziale, detta anche pannello comandi, che consente di avviare in modo semplice specifiche operazioni sul database. Le maschere possono contenere elenchi a discesa, istruzioni, controlli di spostamento e oggetti grafici che semplificano l'utilizzo dei dati da parte degli utenti. Le maschere agevolano pertanto l'interpretazione dei dati in vari modi. Per ulteriori informazioni sulla creazione e l'utilizzo di maschere, vedere il corso "Maschere e relative funzionalità". Stampa di report Un report converte i dati in un documento formattato. I report sono strumenti di grande utilità per esigenze abbastanza comuni, come la stesura di relazioni sui dati di vendita, la creazione di cataloghi di prodotti, la stampa di etichette per CD, DVD e video o l'emissione di fatture e ricevute. I report semplicemente trasformano i dati in documenti. Possono essere disponibili in vari formati e dimensioni, ma sono sempre progettati per presentare i dati in forma stampata. I report consentono di applicare ai dati i formati di stampa e presentazione più appropriati per le proprie esigenze. Nei report è possibile raggruppare i dati, eseguire calcoli, aggiungere intestazioni o impostare una formattazione personalizzata per rendere più comprensibili e leggibili le informazioni. Dopo aver creato un report, è possibile salvarne il formato in modo che abbia lo stesso aspetto ogni volta che viene stampato anche se i dati cambiano.