Panoramica del capitolo Crea Creare database da modelli, pagina 54 Manipola Manipolare le righe e le colonne delle tabelle, pagina 74 Perfeziona Definisci Perfezionare la struttura delle tabelle, pagina 77 Definire relazioni fra le tabelle, pagina 83 Creare database e semplici tabelle 2 Gli argomenti trattati in questo capitolo sono: ▪▪ ▪▪ ▪▪ ▪▪ ▪▪ Creare database da modelli. Creare database e tabelle manualmente. Manipolare le righe e le colonne delle tabelle. Perfezionare la struttura delle tabelle. Definire relazioni fra le tabelle. Con Microsoft Access 2013, molte delle difficoltà e del lavoro ripetitivo legati alla creazione e alla personalizzazione di un database possono essere evitati, grazie ai numerosi modelli disponibili. Il programma offre modelli anche per elementi comuni che potresti voler inserire nei database: si tratta delle cosiddette parti di applicazioni, che consistono di gruppi di oggetti, per esempio una tabella con le maschere, le query o i report correlati, che insieme formano una porzione completa e funzionante di un database, pronta per essere personalizzata nel modo richiesto. Se invece nessuno dei modelli soddisfa le tue esigenze, puoi creare i database manualmente. Un database vuoto, tuttavia, non è più utile di un documento o di un foglio di lavoro vuoto, e può svolgere le sue funzioni solo se inserisci i dati nelle tabelle (operazione detta popolare il database). In questo capitolo esaminerai i modelli per le app Web e creerai un database desktop da un modello; poi creerai una tabella manualmente e sistemerai la visualizzazione di una tabella per adattarla alle tue esigenze. Infine, definirai le relazioni fra due tabelle. Quando avrai terminato il capitolo, avrai un database contenente alcune tabelle e saprai qualcosa di come sono state create le tabelle dei database che utilizzerai per gli esercizi dei capitoli successivi. File di esempio Non hai bisogno di alcun file di esempio per completare gli esercizi di questo capitolo. 53 Creare database da modelli Access 2013 include modelli per molti database utilizzati tipicamente nelle aziende e nelle scuole, e quando sei connesso a Internet puoi accedere a molti altri modelli disponibili sul sito Web di Microsoft Office Online. Utilizzando i modelli, puoi creare un'applicazione di database in molto meno tempo di quanto non ne serva per progettare un database da zero, in quanto il lavoro di progettazione è già stato svolto. Vedi anche Per informazioni sui concetti di base della progettazione di database, consulta il riquadro “Progettazione dei database” più avanti in questo capitolo. Utilizzando i modelli, puoi creare due tipi di applicazioni di database: ▪▪ Database Desktop Questi database sono memorizzati sul computer o su un server di rete. Dopo aver usato un modello di database desktop per creare il database, puoi visualizzarlo e modificarlo utilizzando Access 2013 sul tuo computer locale. ▪▪ App Web Queste applicazioni di database sono ospitate in un ambiente Microsoft SharePoint 2013 e sono ideate in modo da fornire un'interfaccia online attraverso la quale le persone possano visualizzare e inserire dati da un browser Web. Le app Web consentono alle persone di accedere alle informazioni aziendali ovunque si trovino e da qualsiasi computer, che abbia o meno Access installato. Molti dei modelli inclusi in Access e molti di quelli disponibili sul sito Web di Office servono per creare app Web. Per maggiori informazioni, consulta il riquadro “Primi passi con le app Web di Access” più avanti in questo capitolo. I modelli di Access potrebbero non produrre esattamente il database che desideri, ma sono in grado di creare velocemente qualcosa che puoi personalizzare secondo le tue esigenze. Per poter personalizzare un database devi sapere come manipolare i suoi elementi di base, ovvero tabelle, maschere, query e report. Data la complessità di questi modelli, probabilmente non dovresti tentare di modificarli fino a quando non ti sentirai sicuro negli interventi sugli oggetti di database nella visualizzazione Struttura. Quando avrai terminato il libro, saprai abbastanza da poter lavorare in sicurezza con i modelli di applicazione inclusi in Access. In questo esercizio esplorerai i modelli inclusi in Access e creerai un database desktop basato sul modello Gestione attività. 54 Capitolo 2 Creare database e semplici tabelle APRI Non hai bisogno di alcun file di esempio per completare questo esercizio. Chiudi qualsiasi database aperto e quindi esegui i passi riportati di seguito. 1 Nella schermata iniziale di Access o nella pagina Nuovo della visualizzazione Backstage, scorri la pagina per vedere i modelli disponibili. Nota che le icone dei modelli di database desktop rappresentano una pagina vuota, mentre quelle dei modelli di app Web una pagina stilizzata con un globo. Il globo distingue i modelli di app Web dai modelli di database desktop. 2 Nell'elenco dei modelli, fai clic sull'icona del modello di app Web Gestione attività. Facendo clic sull'icona di un modello di app Web, compare una descrizione del modello e ti viene chiesto di assegnare un nome al database e di identificare il sito di SharePoint su cui sarà memorizzato. Creare database da modelli 55 2 Suggerimento Se nessuno dei modelli è adeguato come punto di partenza per il database che devi creare, puoi cercare altri modelli sul sito Web di Office digitando una categoria nella casella Cerca modelli online e poi facendo clic sul pulsante Inizia ricerca. 3 Fai clic sulle frecce Avanti e Indietro, a sinistra e a destra della finestra di creazione, per scorrere l'elenco dei modelli disponibili, leggendo le loro descrizioni. Fermati quando viene visualizzata la finestra di creazione per il modello Attività. Diversamente da altri programmi, che consentono di creare un file e poi assegnare un nome e un percorso di memorizzazione, Access richiede di assegnare un nome e un percorso di memorizzazione prima di creare un nuovo file di database. 4 Nella casella Nome file digita MieAttività. Suggerimento Le convenzioni per la denominazione dei file di database di Access sono le stesse dei file di Windows. I nomi dei file non possono contenere i seguenti caratteri: \ / : * ? “ < > |. Possono invece contenere spazi, ma poiché i file di database sono spesso referenziati nel codice di programmazione, molti sviluppatori di database preferiscono unire le parole dei nomi usando la maiuscola iniziale per distinguerle. 5 Fai clic sul pulsante Sfoglia e nella finestra di dialogo Salva nuovo database accedi alla cartella dei file di esempio Capitolo02. 56 Capitolo 2 Creare database e semplici tabelle Suggerimento Per impostazione predefinita i nuovi database creati sono salvati nella cartella Documenti. Puoi cambiare il percorso di salvataggio quando crei ogni singolo database oppure cambiare la cartella predefinita. Per specificare un'altra cartella predefinita, apri la finestra di dialogo Opzioni di Access e poi, sulla pagina Generale, nell'area Creazione di database, fai clic sul pulsante Sfoglia a destra di Cartella database predefinita. Nella finestra di dialogo Percorso database predefinito, accedi alla cartella che desideri impostare come predefinita e poi fai clic su OK in ciascuna delle finestre di dialogo aperte. 6 Con l'opzione Database di Microsoft Access 2007-2013 selezionata nella casella Salva come, fai clic su OK. Salva il database nella cartella Capitolo02 dei file di esempio. 7 Con il percorso della cartella specificata mostrato sotto la casella Nome file nella finestra, fai clic sul pulsante Crea. Creare database da modelli 57 2 8 Potrebbe comparire una schermata che ti propone due filmati che ti aiutano a capire come funziona il modello. Se lo desideri, puoi guardare i filmati. Quindi deseleziona la casella di controllo Mostra il Riquadro attività iniziale quando il database è aperto e chiudi la finestra. 9 Attiva il contenuto del database e assicurati che il riquadro di spostamento sia aperto. Quindi, se ci sono gruppi chiusi, fai clic sulla loro doppia freccia per aprirli. Per impostazione predefinita, viene visualizzata la maschera Elenco attività nella visualizzazione Maschera, e puoi iniziare ad aggiungere le attività. Suggerimento Sotto il nome della maschera compare una barra degli strumenti contenente comandi creati da macro incorporate. Un database dotato di comandi come questi è chiamato applicazione di database. Le macro esulano dagli argomenti di questo libro: per informazioni, cerca macro nella Guida di Access. 10 Fai clic nel campo sotto Titolo, digita Report mensile e fai clic nel campo sottostante per creare un record. 11 Nel riquadro di spostamento, nel gruppo Tabelle, fai doppio clic su Attività per visualizzare la tabella su cui è basata la maschera Elenco attività. Nota che l'attività che hai appena inserito nella maschera è il primo record della tabella. 58 Capitolo 2 Creare database e semplici tabelle 12 Fai clic destro sulla scheda Attività e poi su Chiudi tutto per chiudere entrambi gli oggetti aperti. Utilizziamo ora una parte di applicazione per aggiungere una maschera al nuovo database. 13 Nel riquadro di spostamento, fai clic sul titolo Tutti gli oggetti di Access e visualizza il gruppo Maschere. Adesso è più facile concentrarsi solo sulle sette maschere del database. 14 Sulla scheda Crea, nel gruppo Modelli, fai clic sul pulsante Parti applicazione per visualizzare la raccolta Parti applicazioni. Puoi aggiungere vari tipi di maschere e insiemi di tabelle correlate e altri oggetti a questo e ad altri database. Suggerimento Questi oggetti già pronti ti consentono di creare istantaneamente un'applicazione di database completamente funzionale ma, come i modelli, contengono funzionalità nascoste che potresti non essere ancora in grado di gestire. Potrai tornare indietro ed esplorare più a fondo le parti di applicazioni quando le conoscerai meglio. Creare database da modelli 59 2 15 Punta su ciascuna delle miniature, una alla volta, per visualizzare la loro descrizione e poi, nell'area Maschere vuote, fai clic su 1 Destra. Osserva che, quando aggiungi la maschera al database, viene aggiunta un'ottava maschera denominata RecordSingoloUnaColonnaEtichetteADestra al gruppo Maschere nel riquadro di spostamento. Viene anche eseguita una macro che apre la maschera Elenco attività. 16 Nel riquadro di spostamento, fai doppio clic su RecordSingoloUnaColonnaEtichetteADestra per aprire la nuova maschera. Puoi personalizzare la maschera in base alle esigenze del database. Vedi anche Per informazioni sulla personalizzazione delle maschere, consulta il ca- pitolo 8, "Creare maschere personalizzate.” 17 Continua da solo nell'esplorazione degli oggetti del database MieAttività. Per ciascun tipo di oggetto, prima di tutto filtra il riquadro di spostamento per mostrare solo quel gruppo e poi esplora i suoi oggetti. + CHIUDI Chiudi il database MieAttività. 60 Capitolo 2 Creare database e semplici tabelle Primi passi con le app Web di Access Un'app Web di Access è un database creato in Access 2013, memorizzato su Microsoft SQL Server e ospitato su un sito di SharePoint in modo tale che gli utenti possano connettersi all'app Web tramite un browser, anche se non hanno Access installato sul dispositivo locale. I piani Office 365 che includono SharePoint (Small Business Premium ed Enterprise) possono ospitare le app web di Access senza la necessità di una particolare configurazione. Le app Web possono anche essere ospitate dalle organizzazioni che hanno installato SharePoint 2013 e SQL Server 2012 su una rete interna. Per creare un'app Web di Access, devi prima di tutto effettuare l'accesso a Office con un account che include SharePoint 2013 (questo account potrebbe non corrispondere all'account Windows). La distribuzione, la gestione e la protezione dell'app Web sono controllate dall'interno dell'infrastruttura SharePoint. Per creare un'app Web: 1 Avvia Access e, nell'angolo in alto a destra della schermata iniziale del programma, verifica di essere connesso a Office con un account che include SharePoint. Se l'account mostrato non include SharePoint, fai clic su Cambia account e poi sull'account che desideri usare; oppure fai clic su Aggiungi account e inserisci le credenziali appropriate. 2 Nel riquadro destro della schermata iniziale di Access, fai clic su App Web personalizzata per creare una nuova app Web vuota o fai clic su uno dei modelli di app Web disponibili. Suggerimento Se non sei sicuro di quale modello scegliere, digita una parola chiave nella casella Cerca nella parte superiore del riquadro e cerca suggerimenti online. 3 Quando ti viene chiesto, digita un nome per l'app Web e il percorso del sito di SharePoint su cui sarà ospitato. Quindi fai clic su Crea per scaricare il modello e creare l'applicazione sul sito di SharePoint indicato. Creare database da modelli 61 2 Quando crei un'app Web, è visualizzato il riquadro Aggiungi tabelle, da cui puoi aggiungere nuove tabelle in quattro facili modi: ▪▪ Fai clic su una voce dell'elenco Ricerche suggerite. ▪▪ Digita un termine di ricerca nella casella Cerca e poi fai clic su una voce nei risultati. ▪▪ Aggiungi una nuova tabella vuota. ▪▪ Crea una tabella da un'origine dati esistente. Dalla schermata iniziale dell'app Web, puoi aggiungere oggetti o visualizzare gli oggetti esistenti. Le tabelle che aggiungi all'app Web sono visualizzate come voci nel riquadro sul lato sinistro della pagina. Per ogni tabella, Access crea automaticamente una maschera Foglio dati e una maschera Elenco associate. Facendo clic su una tabella viene visualizzata un'immagine della maschera della tabella nel riquadro destro. Per modificare la maschera di una tabella, mostra la maschera nella visualizzazione desiderata e fai clic sul pulsante Modifica. Puoi gestire l'origine dati e le azioni dei campi di una maschera, oltre alla formattazione della maschera stessa, nelle visualizzazioni della maschera Elenco e Foglio dati. Per modificare una tabella, fai clic destro sul titolo della tabella e poi fai clic su Modifica tabella. Puoi anche aprire il riquadro di spostamento e modificare le tabelle e le maschere da lì. 62 Capitolo 2 Creare database e semplici tabelle Nelle app Web di Access, le relazioni fra le tabelle sono definite utilizzando il tipo di dati Ricerca. Per iniziare, apri una tabella nella visualizzazione Struttura e poi procedi in uno dei seguenti modi: ▪▪ Per creare una relazione, aggiungi un nuovo campo o seleziona un campo esistente e poi imposta il tipo di dati su Ricerca per avviare Ricerca guidata. ▪▪ Per gestire una relazione esistente, seleziona un campo che abbia il tipo di dati Ricerca e, sulla scheda di strumenti Progettazione, fai clic su Modifica ricerche per avviare Ricerca guidata. La procedura guidata ti assiste passo per passo nella definizione della relazione. Per informazioni su come usare la procedura guidata, consulta “Limitare i dati ai valori di un elenco” nel Capitolo 6, “Mantenere l'integrità dei dati”. Dopo aver creato la struttura per l'app Web in Access, puoi visualizzarla in anteprima nel browser facendo clic su Avvia app nel gruppo Visualizza della scheda Home. Per impostazione predefinita, puoi visualizzare e modificare i dati di una tabella nella visualizzazione elenco o Foglio dati. Per rendere disponibile l'app Web di Access ad altri utenti, ti basta condividere con loro l'indirizzo Web del sito di SharePoint. Quando avviano l'app Web nel loro browser, possono visualizzare e manipolare i dati utilizzando i pulsanti sulla barra delle azioni (che si trova a destra della casella Cerca) per aggiungere, eliminare, modificare, salvare e annullare le modifiche dei record. Le loro modifiche vengono salvate nel database SQL memorizzato centralmente. Suggerimento Se hai bisogno di apportare modifiche più estese al database, puoi fare clic sul pulsante Impostazioni nell'angolo in alto a destra dell'app Web e poi su Personalizza in Access per aprire il database in Access 2013 sul tuo computer locale. Creare database da modelli 63 2 Creare database e tabelle manualmente Immagina di dover memorizzare tipi di informazioni differenti per tipi di contatti differenti. Potresti per esempio voler registrare informazioni diverse per gli impiegati, i clienti e i fornitori. Oltre alle consuete generalità, come nome, indirizzo e numero di telefono, potresti voler aggiungere anche i seguenti dati: ▪▪ Numero di identificazione, data di assunzione, stato civile, deduzioni e stipendio per gli impiegati ▪▪ Ordini e stato dei conti per i clienti ▪▪ Contatti, stato dell'ordine corrente e sconti per i fornitori Potresti iniziare con un modello, aggiungere campi per tutte le varie informazioni a una singola tabella Contatti e quindi riempire soltanto i campi pertinenti per ogni tipo di contatto. Inserendo però tutte queste informazioni in una sola tabella, ben presto si creerà una notevole confusione. È preferibile creare un nuovo database basato sul modello Database vuoto e poi creare manualmente tabelle separate per ciascun tipo di contatto: impiegati, clienti e fornitori. Quando crei un nuovo database vuoto o inserisci una nuova tabella in un database esistente, la tabella è mostrata su una scheda nella visualizzazione Foglio dati, con una riga vuota pronta per ricevere i dati. Suggerimento Quando crei un nuovo database, Access mostra il suo nome e il percorso in cui è salvato sulla barra del titolo. Per informazioni su come modificare la visualizzazione del percorso, consulta “Controllare quali funzioni rendere disponibili” nel Capitolo 11, “Facilitare l'utilizzo del database”. 64 Capitolo 2 Creare database e semplici tabelle 2 Poiché l'oggetto attivo è una tabella, Access aggiunge le schede Strumenti tabella (Campi e Tabella) alla barra multifunzione, per consentirti di lavorare con la tabella. Se chiudi la tabella adesso, Access la elimina. Il modo più semplice per rendere la tabella parte permanente del database è creare almeno un record immettendo dati. Suggerimento Quando inserisci dati in una nuova tabella, Access assegna nomi di campo segnaposto e crea una struttura di tabella base per contenere i dati. Puoi definire la struttura della tabella anche senza inserire dati. Per informazioni sulla struttura delle tabelle, consulta “Perfezionare la struttura delle tabelle” più avanti in questo capitolo. Per informazioni su come aggiungere nuovi campi vuoti a una tabella, consulta “Specificare il tipo di dati” nel capitolo 6, “Mantenere l'integrità dei dati”. Per creare un record, naturalmente, devi sapere quali informazioni inserire e come inserirle. Creare database e tabelle manualmente 65 Ogni tabella ha una riga vuota pronta per ricevere un nuovo record, come indica l'icona dell'asterisco nel selettore del record sul lato sinistro della riga. Per impostazione predefinita, il primo campo di ogni nuova tabella è un campo ID, pensato per contenere un valore che identifica in modo univoco il record. Sempre per impostazione predefinita, questo campo è impostato come chiave primaria della tabella. Due record della tabella non possono avere lo stesso valore nel campo chiave primaria. Campo in attesa di dati Chiave primaria Selettore del record L'icona dell'asterisco indica che il primo record è pronto per l'inserimento dei dati. Il tipo di dati di questo campo è impostato automaticamente su Numerazione automatica, perciò Access inserisce in automatico un numero progressivo nel campo. Nella visualizzazione Struttura, puoi verificare che al campo ID, chiave primaria, è assegnato il tipo di dati Numerazione automatica. Suggerimento Come vedrai in uno degli esercizi successivi, il campo chiave primaria non deve necessariamente avere il tipo di dati predefinito Numerazione automatica. Se hai bisogno di creare un tuo campo chiave primaria, qualsiasi cosa sensata e univoca andrà bene. Per informazioni sui tipi di dati, consulta “Perfezionare la struttura delle tabelle” più avanti in questo capitolo. Il primo campo di cui devi preoccuparti è il campo attivo con l'etichetta Fare clic per aggiungere. In questo campo inserisci il primo dato per il nuovo record e poi premi il tasto Tab o Invio per passare alla prima cella del campo a destra. Viene assegnato automaticamente il valore 1 al campo ID, il nome Campo1 al secondo campo e l'etichetta Fare clic per aggiungere passa al terzo campo. L'icona nel selettore del record sul lato sinistro del record si trasforma nell'immagine di due punti con una matita, per indicare che questo record non è ancora stato salvato, e l'icona Nuovo passa al selettore del record sulla riga successiva. 66 Capitolo 2 Creare database e semplici tabelle L'icona della matita indica che i dati del primo record non sono ancora stati salvati. Quando crei una nuova tabella nella visualizzazione Foglio dati, devi salvare il primo record dopo avere inserito il primo dato. Se non lo fai, Access incrementa il valore ID per ogni nuovo campo che aggiungi a quel record. Se per esempio aggiungi sette campi, Access assegna il valore 7 al campo ID del primo record. Per evitare questo problema, fai clic sull'icona nel selettore del record dopo avere inserito il primo valore nel primo record. Così facendo, viene salvato il record con il valore 1 assegnato al campo ID e i record successivi saranno numerati in sequenza. Avendo inserito il primo dato e salvato il record, puoi continuare a inserire i dati nelle celle successive, premendo Tab o Invio. Quando termini l'inserimento dell'ultimo dato per il primo record, fai clic ovunque nella riga successiva per confermare che il record è completo. Dopo avere completato il primo record di una nuova tabella, probabilmente desideri cambiare i nomi di campo predefiniti in nomi più significativi. Per rinominare un campo fai doppio clic sul suo nome e quindi digita il nome desiderato. Mentre stai inserendo dati in una nuova tabella, puoi salvare la tabella in qualsiasi momento facendo clic sul pulsante Salva sulla barra di accesso rapido e assegnando un nome alla tabella. Se tenti di chiudere la tabella senza salvarla esplicitamente, ti viene chiesto di salvarla. Se fai clic su No, la tabella viene eliminata e perdi tutti i dati che hai inserito. Dopo avere salvato una tabella per la prima volta, ogni record viene salvato automaticamente quando esci da esso. Non devi preoccuparti della possibilità di perdere le modifiche, ma devi tenere presente che la maggior parte dei dati inseriti possono essere eliminati soltanto tramite la modifica del record. I database contengono quasi sempre più tabelle. Puoi creare nuove tabelle vuote facendo clic sul pulsante Tabella nel gruppo Tabelle della scheda Crea. Se devi creare una nuova tabella con una struttura simile a una tabella esistente, puoi copiare e incollare la tabella esistente per creare la nuova. Quando incolli la tabella, Access ti offre l'opzione di assegnare un nome alla tabella e specificare se desideri che la nuova tabella abbia la struttura di quella esistente o ne abbia sia la struttura sia i dati. Creare database e tabelle manualmente 67 2 Per alcuni tipi di tabelle Access prevede i campi Avvio rapido che puoi usare per aggiungere gruppi o tipi di campi comuni a una tabella. Le opzioni Avvio rapido ti evitano il lavoro di definizione dei campi e possono essere molto utili quando sai esattamente quale tipo di campi ti servono. In questo esercizio creerai un database vuoto, inserirai informazioni nel primo record della sua tabella predefinita, assegnerai i nomi ai campi, aggiungerai un altro record e poi salverai e chiuderai la tabella. Quindi copierai la tabella per crearne una seconda. Infine creerai una nuova tabella e sperimenterai i campi Avvio rapido. apri Non hai bisogno di alcun file di esempio per completare questo esercizio. Chiudi qualsiasi database aperto, mostra la pagina Nuovo della visualizzazione Backstage e quindi esegui i passi riportati di seguito. 1 2 Nella pagina Nuovo, fai clic sull'icona Database desktop vuoto. Nella finestra di creazione, nella casella Nome file, digita MieTabelle. Fai clic sul pulsante Sfoglia, accedi alla cartella Capitolo02 dei file di esempio e fai clic su OK. Suggerimento Non puoi creare un database vuoto senza salvarlo. Se non inserisci un nome per il file e non scegli un percorso, il file viene salvato con il nome Database seguito da un numero progressivo nel percorso predefinito (la tua cartella Documenti, a meno che tu non l'abbia cambiato). 3 Fai clic sul pulsante Crea per creare il database vuoto nella posizione specificata. Ora inseriamo i dati nel primo record. 4 Con il campo vuoto sotto Fare clic per aggiungere selezionato nella nuova tabella vuota Tabella1, digita Scott e poi premi il tasto Tab per passare la campo successivo. 5 Nota che l'icona nel selettore del record cambia nella matita per indicare che questo record non è ancora stato salvato. Il valore 1 appare nel campo ID, il nome della seconda colonna cambia in Campo1 e l'etichetta Fare clic per aggiungere passa alla terza colonna. 6 Fai clic sull'icona della matita nel selettore del record per salvare il record prima di procedere. Suggerimento Fare clic sul selettore del record è necessario soltanto dopo avere immesso il primo valore in una nuova tabella. Questa azione imposta il valore del campo ID su 1. 7 Fai clic sulla cella sotto Fare clic per aggiungere e digita le seguenti informazioni nelle sette celle successive. Premi Tab dopo ciascun inserimento. 68 Capitolo 2 Creare database e semplici tabelle Bishop 612 E. 2nd Pocatello ID 73204 USA 208 555-0161 2 I nomi dei campi in cui hai inserito i dati cambiano in Campo seguito da un numero progressivo. Suggerimento Non preoccuparti se ciò che vedi sullo schermo non corrisponde alla figura. In questa immagine abbiamo fatto scorrere la pagina e abbiamo regolato la larghezza delle colonne in modo da rendere visibili tutti i campi. Per informazioni su come regolare la larghezza delle colonne, consulta “Manipolare le righe e le colonne delle tabelle” più avanti in questo capitolo. Prima di passare al record successivo, rendiamo più utili i nomi dei campi. 8 Fai doppio clic sul nome di campo ID (non sul valore ID di Campo5) e digita IDCliente per rinominarlo. Suggerimento I nomi dei campi possono includere spazi, ma gli spazi potrebbero richiedere precauzioni speciali quando si creano le query, perciò è meglio non usarli. 9 Ripeti il passo 8 per gli altri campi, cambiando i loro nomi come segue: Campo1 Nome Campo4 Campo2 Cognome Campo5 Campo3 Via Campo6 Città Stato CAP Campo7 Paese Campo8 Telefono Per una maggiore leggibilità, usa l'iniziale maiuscola per ogni parola e ometti gli spazi oppure sostituisci ogni spazio con il trattino basso (_). Creare database e tabelle manualmente 69 10 Aggiungi alla tabella un altro record contenente i seguenti valori, premendo Tab per passare da un campo all'altro: Nome Cognome Via John Yokim 43 rue St. Laurent Montreal Stato Quebec Città CAP Canada Telefono 514 555-0167 Paese (premi Tab per saltare questo campo) Ora salviamo e chiudiamo la tabella. 11 12 Sul lato destro della barra delle schede fai clic sul pulsante Chiudi. Quando ti viene chiesto se desideri salvare la struttura della tabella, fai clic su Sì per aprire la finestra di dialogo Salva con nome. Devi salvare la struttura della tabella prima di chiuderla. Suggerimento Facendo clic su No la nuova tabella viene eliminata dal database insieme ai suoi dati. 13 Nella casella Nome tabella, digita Clienti e poi fai clic su OK per chiudere la tabella e aggiungerla al gruppo Tabelle nel riquadro di spostamento. Il database ora contiene una tabella. Suggerimento Puoi rinominare una tabella facendo clic destro su essa nel riquadro di spostamento e poi facendo clic su Rinomina. Puoi eliminare una tabella facendo clic destro su essa, facendo clic su Elimina e poi confermando l'eliminazione nella finestra messaggio che appare (per eliminare una tabella puoi anche selezionarla nel riquadro di spostamento e fare clic sul pulsante Elimina nel gruppo Record sulla scheda Home o premere il tasto Canc). 70 Capitolo 2 Creare database e semplici tabelle Creiamo ora una nuova tabella con la stessa struttura di Clienti. 14 15 Nel riquadro di spostamento, fai clic sulla tabella Clienti per selezionarla. Sulla scheda Home, nel gruppo Appunti, fai clic sul pulsante Copia. Quindi fai clic sul pulsante Incolla per aprire la finestra di dialogo Incolla tabella con nome. 2 Quando è necessario creare una tabella simile a una esistente, a volte è più facile personalizzare una copia che non creare la tabella da zero. Tasti di scelta rapida Premi Ctrl+C per copiare i dati selezionati. Premi Ctrl+V per incollare i dati. Per ulteriori informazioni sui tasti di scelta rapida, consulta "Tasti di scelta rapida" alla fine del libro. 16 Nella casella Nome tabella digita Impiegati. Nell'area Opzioni di incollamento fai clic su Solo struttura per prendere i campi della tabella Clienti escludendo i record sui clienti. Quindi fai clic su OK per creare la tabella e aggiungerla al gruppo Tabelle nel riquadro di spostamento. Suggerimento Puoi utilizzare i comandi Copia e Incolla anche per accodare le infor- mazioni della tabella selezionata in un'altra tabella esistente. In tal caso, nella finestra di dialogo Incolla tabella con nome, digita il nome della tabella di destinazione nella casella Nome tabella, fai clic su Accoda dati a tabella esistente e poi su OK. 17 Fai doppio clic su Impiegati per aprire la tabella nella visualizzazione Foglio dati, in modo da poter vedere i suoi campi. Quindi chiudi di nuovo la tabella. Suggerimento Nonostante tu abbia specificato di voler copiare solo la struttura della tabella Clienti, il campo CAP nella tabella Impiegati contiene 0. Questo accade perché Access ha assegnato automaticamente questo valore predefinito al campo. Per informazioni sui valori predefiniti, consulta “Limitare i dati ai valori di un elenco” nel Capitolo 6, “Mantenere l'integrità dei dati”. Creare database e tabelle manualmente 71 Ora creiamo un'altra tabella e aggiungiamo un paio di campi. 18 Sulla scheda Crea, nel gruppo Tabelle, fai clic sul pulsante Tabella per creare una nuova tabella contenente un campo ID e il segnaposto Fare clic per aggiungere. 19 Con il campo Fare clic per aggiungere attivato, sulla scheda di strumenti Campi, nel gruppo Aggiungi ed elimina, fai clic sul pulsante Altri campi per visualizzare un menu contenente la raccolta Campi. Scorri fino in fondo alla raccolta. I campi Avvio rapido si trovano in fondo alla raccolta Campi. 20 Nell'area Avvio rapido della raccolta, fai clic su Nome per inserire i campi già pronti Cognome e Nome. 21 Fai clic nel campo sotto Fare clic per aggiungere e poi ripeti il passo 19, questa volta facendo clic su Indirizzo nell'elenco Avvio rapido per aggiungere i campi già pronti Indirizzo, Città, Stato/Provincia, CAP e Paese/Area geografica. Suggerimento Nota che l'opzione Indirizzo di Avvio rapido include il campo Paese/ Area geografica. Nei database del libro usiamo il nome di campo Paese, ma potresti preferire il nome di campo più esplicito Paese/Area geografica se le tabelle che crei dovranno contenere indirizzi internazionali. 22 Chiudi la tabella, salvandola con il nome Corrieri quando ti viene chiesto. + CHIUDI Mantieni aperto il database MieTabelle per utilizzarlo negli esercizi successivi. 72 Capitolo 2 Creare database e semplici tabelle Progettazione dei database In un database ben progettato ogni informazione è inserita in una sola tabella. Se stai inserendo la stessa informazione in più posizioni, questo è un sicuro segno che devi analizzare i dati e individuare un modo per mettere le informazioni duplicate in una tabella separata. Una tabella Ordini, per esempio, non dovrebbe includere informazioni sui clienti che hanno effettuato ordini, per due importanti ragioni. In primo luogo, se lo stesso cliente fa più di un ordine, tutte le sue informazioni devono essere ripetute per ogni ordine, e questo accresce notevolmente la dimensione della tabella Ordini e del database. In secondo luogo, se il cliente trasloca, il suo indirizzo deve essere aggiornato nei record di tutti gli ordini. Per evitare questo tipo di problemi è possibile inserire le informazioni dei clienti in una tabella Clienti e assegnare a ogni cliente un identificativo univoco, come un numero progressivo o una stringa di lettere univoca, nel campo chiave primaria. Quindi, nella tabella Ordini, è possibile identificare il cliente mediante l'identificativo univoco. Quando vuoi sapere il nome e l'indirizzo del cliente che ha fatto un particolare ordine, puoi fare in modo che Access utilizzi l'identificativo univoco per cercare l'informazione nella tabella Clienti. Il processo di assicurare che un insieme di informazioni sia registrato in una sola posizione è chiamato normalizzazione. Questo processo testa il database per la conformità con un insieme di regole di normalizzazione che pongono domande come questa: “Il contenuto del campo chiave primaria di un record corrisponde a uno e un solo record?”. Sapendo che l'ID di un cliente è 1002, è possibile recuperare il nome e l'indirizzo del cliente dalla tabella Clienti; sapendo che il cognome del cliente è Rossi, invece, non è detto che si possa estrarre il nome e l'indirizzo del cliente dalla tabella, perché più clienti potrebbero chiamarsi Rossi. Una trattazione approfondita della normalizzazione esula dagli argomenti di questo libro. Per ulteriori informazioni, consulta la Guida di Access o cerca Nozioni fondamentali della progettazione di database sul sito Web di Office. Creare database e tabelle manualmente 73 2 Manipolare le righe e le colonne delle tabelle Nel capitolo 1, “Esplorare Microsoft Access 2013”, abbiamo visto come cambiare velocemente la larghezza delle colonne di una tabella per visualizzare adeguatamente i dati. Oltre a modificare la larghezza delle colonne, potrebbe essere necessario cambiare l'ordine dei campi per ottenere una visualizzazione migliore dei dati. Se per esempio devi cercare un numero di telefono ma i nomi e i numeri telefonici sono separati da molte colonne, dovrai scorrere la finestra della tabella per poter vedere le informazioni desiderate. Potresti perciò voler riordinare o nascondere alcune colonne, per poter vedere contemporaneamente tutti i campi che ti interessano. Puoi manipolare le colonne e le righe di una tabella di Access senza influire in alcun modo sui dati sottostanti. È possibile dimensionare le righe, e dimensionare, nascondere, spostare e bloccare le colonne. Dopo aver eseguito le modifiche, puoi salvare la formattazione della tabella, in modo che sia ancora presente quando la aprirai in seguito, oppure puoi annullare gli adattamenti apportati alla tabella evitando di salvare. In questo esercizio aprirai una tabella e manipolerai le sue righe e colonne. APRI Per completare questo esercizio devi utilizzare il database MieTabelle con cui hai lavorato nell'esercizio precedente. Se necessario, apri il database, quindi esegui i passi riportati di seguito. 1 Nel riquadro di spostamento, fai doppio clic sulla tabella Clienti per aprirla nella visualizzazione Foglio dati. 2 Nella riga dei nomi dei campi punta sul bordo destro della colonna Via e, quando il puntatore assume l'aspetto di una doppia freccia, trascina verso destra fino a quando vedi tutti gli indirizzi per intero. 3 Fai doppio clic sul bordo destro di qualsiasi colonna troppo larga o troppo stretta per regolarne la larghezza in base al contenuto. Suggerimento Questa tecnica è particolarmente utile in una tabella grande, in cui non si può determinare facilmente la dimensione del valore più lungo di un campo. Adesso modifichiamo l'altezza delle righe della tabella. 4 Aumenta l'altezza di tutte le righe della tabella puntando sul bordo fra due selettori di record e trascinando verso il basso. 74 Capitolo 2 Creare database e semplici tabelle Non puoi cambiare l'altezza di una singola riga. 5 Sulla scheda Home, nel gruppo Record, fai clic sul pulsante Altro e poi su Altezza righe per aprire la finestra di dialogo Altezza righe. Puoi impostare le righe all'altezza precisa desiderata. 6 Nella finestra di dialogo Altezza righe, seleziona la casella di controllo Altezza standard e poi fai clic su OK per riportare l'altezza delle righe all'impostazione predefinita. Adesso proviamo a nascondere le colonne. 7 Fai clic in qualsiasi cella della colonna Nome. Nel gruppo Record, fai clic sul pulsante Altro e poi su Nascondi campi. Suggerimento Se selezioni più colonne prima di fare clic su Nascondi campi, tutte le colonne selezionate vengono nascoste. Puoi selezionare colonne adiacenti facendo clic sul nome di campo della prima colonna e, tenendo premuto il tasto Maiusc, clic sul nome di campo dell'ultima. Le due colonne e tutte quelle comprese tra esse vengono selezionate. 8 Per ripristinare la colonna nascosta, nel gruppo Record, fai clic sul pulsante Altro e poi su Scopri campi per aprire la finestra di dialogo Scopri colonne. Manipolare le righe e le colonne delle tabelle 75 2 Puoi selezionare e deselezionare le caselle di controllo per scegliere quali campi mostrare e nascondere. Suggerimento Se desideri nascondere molte colonne non adiacenti, puoi visualizzare la finestra di dialogo Scopri colonne e deselezionare le loro caselle di controllo. 9 Nella finestra di dialogo Scopri colonne, seleziona la casella di controllo Nome e poi fai clic su Chiudi. Adesso blocchiamo le prime tre colonne, in modo che rimangano visualizzate quando scorri la tabella. 10 Per gli scopi di questo esercizio, se sono visualizzati tutti i campi della tabella, modifica le dimensioni della finestra del programma in modo che alcuni campi non siano visibili. 11 Punta sul nome di campo IDCliente e trascina sui nomi dei campi Nome e Cognome. Con le tre colonne selezionate, fai clic su Altro nel gruppo Record e poi su Blocca campi. 12 Scorri la pagina verso destra e nota che le prime tre colonne rimangono visibili mentre scorri la pagina. 76 Capitolo 2 Creare database e semplici tabelle 13 Quando il campo Telefono è adiacente al campo Cognome, nel gruppo Record, fai clic su Altro e poi su Sblocca tutti i campi per riportare i campi alla loro normale condizione. Suggerimento I comandi per nascondere, scoprire, bloccare e sbloccare le colonne sono disponibili anche nel menu di scelta rapida che appare quando fai clic destro su un nome di campo. Immagina di voler sempre visualizzare il numero di telefono del cliente accanto al nome. Spostiamo perciò la colonna Telefono. 14 Fai clic sul nome di campo Telefono per selezionare il campo. Trascina il campo verso sinistra, rilasciando il pulsante del mouse quando la linea nera spessa appare a destra del campo Cognome. 15 Chiudi la tabella Clienti, facendo clic su Sì per salvare le modifiche che hai apportato alle larghezze delle colonne e al loro ordine. Se compare un messaggio con l'avviso che questa azione svuota gli Appunti, fai clic su Sì. + CHIUDI Mantieni aperto il database MieTabelle per utilizzarlo negli esercizi successivi. Perfezionare la struttura delle tabelle La struttura di un database può essere creata nella visualizzazione Foglio dati, ma alcuni interventi di perfezionamento possono essere eseguiti soltanto nella visualizzazione Struttura. Quando avrai acquisito la necessaria familiarità, potrai creare le tabelle dal nulla nella visualizzazione Struttura, dove hai maggiore controllo sui campi. Puoi aprire una nuova tabella nella visualizzazione Struttura facendo clic sul pulsante Struttura tabella nel gruppo Tabelle sulla scheda Crea. Quando mostri una tabella esistente nella visualizzazione Struttura, la pagina mostra la progettazione sottostante della tabella. Perfezionare la struttura delle tabelle 77 2 La pagina di progettazione della tabella è divisa in due parti: la griglia di definizione dei campi e l'area Proprietà campo. La parte superiore della pagina di progettazione della tabella presenta i seguenti elementi: ▪▪ Selettore del campo Identifica il campo attivo con una casella ombreggiata all'e- stremità sinistra della riga. Fai clic su qualsiasi selettore del campo per selezionare l'intero campo. Puoi quindi inserire una riga sopra quella selezionata, eliminare la riga (eliminando così il campo) o trascinare la riga verso l'alto o verso il basso per cambiare la posizione del campo nella tabella. Il selettore del campo identifica anche il campo chiave primaria della tabella, mostrando l'icona chiave primaria (una chiave con una freccia rivolta verso destra). Suggerimento Se desideri eliminare la chiave primaria dalla tabella (per esempio quando non è necessario che un campo contenga un valore univoco per ogni record), seleziona il campo impostato come chiave primaria e, sulla scheda di strumenti Progettazione, nel gruppo Strumenti, fai clic sul pulsante Chiave primaria per disattivarlo. Se desideri impostare un altro campo come chiave primaria, seleziona il campo desiderato e fai clic sul pulsante Chiave primaria per attivarlo (non è necessario rimuovere prima la chiave primaria dal campo corrente: viene rimossa automaticamente). 78 Capitolo 2 Creare database e semplici tabelle ▪▪ Colonna Nome campo Contiene i nomi che hai specificato quando hai creato la tabella. I nomi possono essere modificati utilizzando le normali tecniche di modifica del testo. È possibile aggiungere un nuovo campo digitando il suo nome nella prima cella vuota di questa colonna. ▪▪ Colonna Tipo dati Specifica il tipo di dati che il campo può contenere. Per impo- stazione predefinita, al campo ID di una nuova tabella è assegnato il tipo di dati Numerazione automatica e a tutti gli altri campi il tipo di dati Testo breve (se aggiungi un nuovo campo nella visualizzazione Foglio dati, al campo viene assegnato il tipo di dati che corrisponde meglio ai dati che inserisci nel campo). Con l'eccezione dei campi con i tipi di dati Oggetto OLE e Allegato, puoi cambiare il tipo di qualsiasi campo, facendo clic sul suo valore Tipo dati, sulla freccia che appare e poi sul tipo di dati desiderato nell'elenco. Facendo clic su una voce della colonna Tipo dati, vengono visualizzati i tipi di dati disponibili. Vedi anche Per ulteriori informazioni sui tipi di dati, consulta “Specificare il tipo di dati” nel capitolo 6, “Mantenere l'integrità dei dati”. ▪▪ Colonna Descrizione Contiene una descrizione facoltativa del campo. L'area Proprietà campo in fondo alla pagina di progettazione mostra le proprietà del campo selezionato nella parte superiore. Ogni tipo di dati possiede proprietà specifiche che possono determinare attributi come il numero di caratteri consentiti nel campo, il valore inserito automaticamente quando l'utente non digita nulla e se il dato è richiesto. Le proprietà possono anche determinare se un dato inserito è valido e possono forzare l'utente a scegliere fra un elenco di valori anziché digitare manualmente nel campo (riducendo così il rischio di errori). Perfezionare la struttura delle tabelle 79 2 Tutti i campi, indipendentemente dal tipo di dati, possono avere una proprietà Etichetta che appare al posto del nome del campo nelle tabelle e negli altri oggetti di database. Potresti per esempio voler utilizzare le etichette per visualizzare i nomi dei campi con spazi, come "Codice postale" e "Indirizzo completo". Vedi anche Per informazioni su come utilizzare le proprietà per controllare l'accuratezza dei dati inseriti, consulta il capitolo 6, “Mantenere l'integrità dei dati”. Per un elenco completo dei tipi di dati e delle proprietà, cerca tipi di dati sul sito Web di Office. In questo esercizio aprirai una tabella nella visualizzazione Struttura, aggiungerai ed eliminerai alcuni campi, cambierai un tipo di dati, imposterai le dimensioni dei campi e aggiungerai un'etichetta. APRI Per completare questo esercizio devi utilizzare il database MieTabelle con cui hai lavorato nell'esercizio precedente. Se necessario, apri il database, quindi esegui i passi riportati di seguito. 1 Nel riquadro di spostamento, fai clic destro sulla tabella Impiegati e poi fai clic su Visualizzazione Struttura. La tabella è stata creata copiando la tabella Clienti. Ora apportiamo alcune modifiche ai campi. 2 Nella colonna Nome campo, seleziona IDCliente, inserisci IDImpiegato e premi due volte il tasto Tab. 3 4 Nella colonna Descrizione, digita Numero di identificazione univoco. 5 Nella riga vuota sotto il campo Telefono, fai clic nella cella Nome campo e digita DataDiNascita . Fai clic nella cella Tipo dati, che indica che al nuovo campo è assegnato il tipo di dati Testo breve. 6 7 Fai clic sulla freccia sul lato destro della cella Tipo dati e poi su Data/ora nell'elenco. 8 Seleziona il nome di campo CAP, cambialo in CodicePostale e poi cambia il suo tipo di dati in Testo breve. Fai clic sul selettore del campo Paese e poi, sulla scheda di strumenti Progettazione, nel gruppo Strumenti, fai clic sul pulsante Elimina righe. Ripeti i passi 5 e 6 per aggiungere un altro campo Data/ora con il nome DataDiAssunzione. 80 Capitolo 2 Creare database e semplici tabelle 2 L'area Proprietà campo mostra le proprietà che puoi impostare per il tipo di dati Testo breve. Suggerimento Se inserisci solo CAP di cinque cifre, il tipo di dati Numerico va bene. Se imposti il tipo Testo breve, puoi inserire i codici a nove cifre o contenenti lettere utilizzati in alcuni paesi. Ora modifichiamo alcune proprietà del campo CodicePostale. 9 Nella casella a destra di Dimensione campo, fai doppio clic su 255 e digita 10 per limitare i dati inseriti in questo campo a 10 caratteri. 10 Cambia la proprietà Dimensione campo dei campi elencati di seguito specificando i valori indicati: Nome Cognome 50 50 Città Stato 50 20 Telefono 30 Suggerimento In alcuni casi, cambiando le proprietà dei campi di una tabella che contiene dati, si possono ottenere risultati inaspettati. Se apporti modifiche alle proprietà di un campo che potrebbero causare perdite di dati (per esempio se imposti la proprietà Dimensione campo su un numero di caratteri minore rispetto a uno dei valori esistenti nel campo), vieni avvisato del problema quando tenti di salvare la tabella. Per ulteriori informazioni, consulta il capitolo 6, "Mantenere l'integrità dei dati". Perfezionare la struttura delle tabelle 81 11 Fai clic sul campo Stato. Nell'area Proprietà campo, fai clic nella casella Etichetta e digita Stato o regione. Hai cambiato le proprietà Dimensione campo ed Etichetta per il campo Stato. 12 Nota che, nella parte superiore della pagina di progettazione, la voce nella colonna Nome campo rimane Stato. Passa alla visualizzazione Foglio dati. 13 Quando compare il messaggio con l'avviso che devi salvare la tabella prima di uscire dalla visualizzazione Struttura, fai clic su Sì per salvare la tabella. 14 Se necessario, allarga il campo Stato e osserva che, in questa visualizzazione, il nome del campo viene sostituito dalla proprietà Etichetta Stato o regione. Con la tabella nella visualizzazione Foglio dati, aggiungiamo un altro campo. 15 Fai clic sul nome di campo Cognome. Sulla scheda di strumenti Campi, nel gruppo Aggiungi ed elimina, fai clic sul pulsante Testo breve per aggiungere un nuovo Campo1 che ha il tipo di dati specificato. Suggerimento Puoi anche fare clic sull'etichetta Fare clic per aggiungere, a destra dell'ultimo campo sulla riga dei nomi dei campi, e poi, nell'elenco che appare, fare clic sul tipo di dati desiderato. 16 Con Campo1 selezionato, digita Titolo e premi il tasto Invio. 82 Capitolo 2 Creare database e semplici tabelle 17 Fai clic sul nome di campo Titolo. Sulla scheda di strumenti Campi, nel gruppo Proprietà, fai clic su 255 nella casella Dimensione campo per selezionarlo, digita 50 e premi il tasto Invio. 18 Digita le seguenti informazioni nel primo record, premendo il tasto Tab dopo ogni inserimento: Nome Cognome Titolo Karen Berg Titolare 2 La tabella Impiegati è ora pronta per l'inserimento di altri record di impiegati. 19 Chiudi la tabella Impiegati, facendo clic su Sì per salvare le modifiche al layout quando ti viene chiesto. + CHIUDI Mantieni aperto il database MieTabelle per utilizzarlo nell'ultimo esercizio. Definire relazioni fra le tabelle In Access una relazione è un'associazione che collega il campo chiave primaria di una tabella a un campo contenente le stesse informazioni di un'altra tabella. Il campo dell'altra tabella è chiamato chiave esterna. Se per esempio i clienti sono assegnati a determinati agenti, puoi stabilire una relazione collegando la chiave primaria IDImpiegato della tabella Impiegati con la chiave esterna IDImpiegato della tabella Clienti. Ogni cliente è assegnato a un solo impiegato, ma ogni impiegato può gestire più clienti, perciò questo tipo di relazione, il più comune, è chiamato relazione uno-a-molti. Analogamente, se ogni ordine è associato a un cliente, puoi stabilire una relazione collegando il campo chiave primaria IDCliente della tabella Clienti e il campo chiave esterna IDCliente della tabella Ordini. Ogni ordine è effettuato da un solo cliente, ma ogni cliente può effettuare molti ordini. Perciò si tratta ancora di una relazione uno-a-molti. Definire relazioni fra le tabelle 83 Relazioni meno comuni sono le seguenti: ▪▪ Uno-a-uno In questo tipo di relazione ogni record di una tabella può avere un solo record correlato nell'altra tabella. Questa relazione non è molto usata, perché è più facile mettere tutti i campi in una sola tabella. Potresti però usare due tabelle correlate, invece di una sola, per dividere una tabella contenente molti campi o per tenere traccia di informazioni che riguardano solo alcuni record della prima tabella. ▪▪ Molti-a-molti Questo tipo di relazione consiste effettivamente di due relazioni uno-a-molti legate insieme tramite una terza tabella. Potresti vedere questa relazione, per esempio, in un database contenente le tabelle Prodotti, Ordini e Dettagli ordini. La tabella Prodotti ha un record per ogni prodotto venduto e ogni prodotto ha un IDProdotto univoco. La tabella Ordini ha un record per ogni ordine effettuato e ogni record contiene un IDOrdine univoco. La tabella Ordini tuttavia non specifica quali prodotti sono stati inclusi in ogni ordine; questa informazione si trova nella tabella Dettagli ordini, che è la tabella posizionata nel mezzo e che lega le altre due tabelle tra loro. Prodotti e Ordini hanno ciascuna una relazione uno-a-molti con Dettagli ordini. Prodotti e Ordini hanno perciò una relazione molti-a-molti l'una con l'altra. In breve, questo significa che ogni prodotto può apparire in molti ordini e ogni ordine può includere molti prodotti. Il modo più comune per creare una relazione fra due tabelle è aggiungere le tabelle alla pagina Relazioni, visualizzata facendo clic sul pulsante Relazioni nel gruppo Relazioni sulla scheda Strumenti database. Basta trascinare un campo di una tabella sul campo comune dell'altra tabella e completare la definizione della relazione nella finestra di dialogo Modifica relazioni. In questa finestra di dialogo puoi imporre una limitazione sui dati, chiamata integrità referenziale, che consente di inserire un dato in una tabella solo se esiste già nell'altra tabella. Dopo avere creato una relazione, puoi eliminarla rimuovendo la linea che collega le tabelle nella pagina Relazioni. Puoi anche eliminare tutte le caselle della pagina facendo clic sul pulsante Cancella layout nel gruppo Strumenti sulla scheda di strumenti Progettazione. Suggerimento La trattazione delle relazioni in questa sezione è volutamente semplificata. Le relazioni sono tuttavia l'elemento che distingue i database relazionali, e Access prevede molti meccanismi complessi per assicurare l'integrità dei dati su entrambi i lati delle relazioni. Alcuni di questi meccanismi sono trattati nel Capitolo 6, “Mantenere l'integrità dei dati”. Per una panoramica completa, cerca Guida alle relazioni fra le tabelle nella Guida di Access. 84 Capitolo 2 Creare database e semplici tabelle Suggerimento Le app Web di Access non usano la pagina Relazioni per creare e gestire le relazioni, ma usano campi impostati sul tipo di dati Ricerca. Per informazioni su questo tipo di dati, consulta “Limitare i dati ai valori di altre tabelle” nel Capitolo 6, “Mantenere l'integrità dei dati”. In questo esercizio creerai relazioni fra una tabella e altre due tabelle. Quindi verificherai l'integrità referenziale delle relazioni. APRI Per completare questo esercizio devi utilizzare il database MieTabelle con cui hai lavorato nell'esercizio precedente. Se necessario, apri il database, quindi esegui i passi riportati di seguito. 1 Sulla scheda Crea, nel gruppo Tabelle, fai clic sul pulsante Tabella per creare una nuova tabella. Prima di aggiungere campi a questa tabella, salviamola. 2 Sulla barra di accesso rapido, fai clic sul pulsante Salva, assegna alla tabella il nome Ordini e fai clic su OK. 3 A destra di Fare clic per aggiungere fai clic sulla freccia e, nell'elenco dei tipi di dati, fai clic su Numero. Ripeti questo passo per creare un secondo campo con il tipo di dati Numero. 4 Rinomina Campo1 in IDCliente e Campo2 in IDImpiegato. Ogni ordine della tabella Ordini sarà effettuato da un cliente e sarà gestito da un impiegato. Definiamo adesso relazioni fra la tabella Ordini e le tabelle Clienti e Impiegati, in modo da non creare record per ordini di clienti inesistenti o che sono gestiti da impiegati inesistenti. 5 Chiudi la tabella Ordini. Suggerimento Non puoi creare una relazione che coinvolge una tabella aperta. 6 Sulla scheda Strumenti database, nel gruppo Relazioni, fai clic sul pulsante Relazioni per aprire la finestra di dialogo Mostra tabella. Definire relazioni fra le tabelle 85 2 Le tabelle fra le quali definire una relazione devono essere selezionate nella pagina Tabelle della finestra di dialogo Mostra tabella. Risoluzione dei problemi Se la finestra di dialogo non si apre automaticamente, fai clic sul pulsante Mostra tabella nel gruppo Reazioni sulla scheda di strumenti Progettazione. 7 Per indicare che desideri creare una relazione per la tabella Clienti selezionata, fai clic su Aggiungi. Fai doppio clic su Ordini e poi fai clic su Chiudi. Nella pagina Relazioni, nota che il campo IDCliente è mostrato nell'elenco dei campi di entrambe le tabelle. Le due caselle elencano tutti i campi delle rispettive tabelle. 86 Capitolo 2 Creare database e semplici tabelle 8 Nell'elenco dei campi Clienti, fai clic su IDCliente e trascinalo sul campo IDCliente dell'elenco Ordini. Rilascia il pulsante del mouse per aprire la finestra di dialogo Modifica relazioni. 2 In fondo alla finestra di dialogo è visibile l'indicazione che si tratta di una relazione uno-a-molti. 9 Seleziona la casella di controllo Applica integrità referenziale e fai clic su Crea. Nella pagina Relazioni, nota che ora una linea connette i due elenchi di campi, collegando il campo chiave primaria della tabella Clienti con la chiave esterna della tabella Ordini. I simboli alle estremità della linea indicano che ogni valore IDCliente appare solo una volta nella tabella Clienti ma può apparire molte volte nella tabella Ordini. Definire relazioni fra le tabelle 87 Aggiungiamo la tabella Impiegati alla pagina Relazioni, in modo da poter creare una relazione che collega questa tabella alla tabella Ordini. 10 Sulla scheda di strumenti Progettazione, nel gruppo Relazioni, fai clic sul pulsante Mostra tabella. Nella finestra di dialogo Mostra tabella, fai doppio clic sulla tabella Impiegati e poi fai clic su Chiudi. Suggerimento Puoi aggiungere le tabelle anche trascinandole dal gruppo Tabelle del riquadro di spostamento alla pagina Relazioni. 11 Se necessario, trascina la barra del titolo dei tre elenchi di campi in modo da disporli affiancati ed equidistanti. 12 Nell'elenco dei campi Impiegati, fai clic sul campo IDImpiegato e trascinalo sul campo IDImpiegato dell'elenco Ordini. Quindi, nella finestra di dialogo Modifica relazioni, seleziona la casella di controllo Applica integrità referenziale e fai clic su Crea. 13 Dopo che è stata tracciata la linea di relazione fra la chiave primaria e la chiave esterna, chiudi la pagina Relazioni e fai clic su Sì per salvare il suo layout. Ora proviamo la relazione. 14 Apri la tabella Ordini. Nel campo IDCliente del primo record, cambia il valore 0 in 11 e fai clic sotto il record per completarlo. Compare una finestra messaggio con l'avviso che non è possibile aggiungere il nuovo record alla tabella. Il valore del campo IDCliente nella tabella Ordini deve corrispondere a uno dei valori del campo chiave primaria IDCliente della tabella Clienti. 15 16 Fai clic su OK. Cambia il valore in 1. Nel campo IDImpiegato, cambia il valore 0 in 1 e fai clic sotto il record per completarlo. Il record viene accettato perché esiste un record con il valore 1 nel campo chiave primaria IDCliente della tabella Clienti e un record con il valore 1 nel campo chiave primaria IDImpiegato della tabella Impiegati. + CHIUDI Chiudi la tabella Ordini e quindi chiudi il database MieTabelle. 88 Capitolo 2 Creare database e semplici tabelle Punti importanti ▪▪ Access 2013 include modelli che ti aiutano a creare app Web, database desktop e parti di applicazioni e ad aggiungere tabelle correlate e altri oggetti di database. ▪▪ Anziché registrare tutte le informazioni in una sola tabella, è necessario creare tabelle diverse per ogni tipo di informazioni, quali clienti, ordini e fornitori. ▪▪ È possibile creare una semplice struttura di tabella inserendo i dati e assegnando i 2 nomi ai campi nella visualizzazione Foglio dati. È anche possibile impostare il tipo di dati e determinate proprietà. ▪▪ Manipolando o nascondendo le righe e le colonne, i dati del database non vengono alterati in alcun modo. ▪▪ Nella visualizzazione Struttura è possibile modificare la struttura di qualsiasi tabella, che sia stata creata manualmente o come parte di un modello. ▪▪ I tipi di dati e le proprietà determinano quali dati possono essere inseriti in un campo e il modo in cui i dati sono mostrati sullo schermo. Attenzione: la modifica di alcune proprietà potrebbe alterare i dati. ▪▪ È possibile combinare le informazioni di due tabelle creando una relazione fra il campo chiave primaria di una tabella e il campo chiave esterna dell'altra. Punti importanti 89