Creare un nuovo database Access è un programma che permette la creazione e la successiva gestione di banche dati. Per avviare Microsoft Access si seleziona il comando Esegui dal menù “Start”, e digitiamo “msaccess” prima di premere Invio È possibile creare un database tramite una procedura guidata, la quale può non presentare esattamente la struttura che desideriamo, ma offre un notevole vantaggio relativamente ai tempi di realizzazione. Vediamo un esempio Dal menù File selezioniamo Nuovo; si apre il riquadro attività “Nuovo file”. Dalla sezione Modelli facciamo clic su “in questo computer” e poi sulla cartella “Database”. A questo punto scegliamo (con un doppio clic) un tipo di database; nel nostro esempio scegliamo “Gestione contatti”. Si apre la finestra “Salva nuovo database” e, prima di premere “Crea”, indichiamo ubicazione e nome del file (nel nostro esempio il nome file sarà “Contatti”). Ricordiamo che Access segue le regole generali del Windows e, pertanto, all’interno dei nomi dei file, non è possibile inserire i caratteri \ / : * ? “ < > |. Inoltre non può superare i 215 caratteri. La prima schermata della “Creazione Guidata Database” indica il tipo di informazioni che saranno memorizzate nel database; non richiede input e, pertanto, possiamo cliccare sul tasto “Avanti” per passare alla seconda pagina. Nella seconda pagina, invece, troviamo sulla sinistra le tre tabelle che saranno incluse nel database “Gestione Contatti”; sulla destra troviamo i campi relativi alla tabella selezionata. I campi non in corsivo sono obbligatori; quelli in corsivo sono facoltativi e spetta all’utente, tramite il segno di spunta, decidere se includerli oppure no. Campo obbligatorio Una volta scelti i campi passiamo alla terza schermata della creazione guidata con il tasto Avanti e scegliamo un aspetto tra quelli disponibili. Dopo aver premuto nuovamente Avanti 1/14 giungiamo alla quarta schermata dove opzioneremo uno stile per i report (ossia per le pagine che verranno stampate). L’ennesimo avanzamento ci permette di scegliere il nome da assegnare al database (nel nostro esempio scriviamo “Contatti”). Andiamo avanti con il tasto relativo e giungiamo all’ultima schermata, che, in quanto l’ultima, non presenta il tasto Avanti. Lasciando spuntata la casella di controllo “Apri il database”, facciamo clic su “Fine”. Terminata la procedura di creazione viene mostrato il database con il Pannello comandi. Finestra del database Pannello Comandi La finestra del database, invece, è iconizzata in basso a sinistra. Se facciamo clic sul pulsante “Chiudi” di questa finestra, chiuderemo il database. La creazione guidata potrebbe non proporre esattamente ciò che l’utente desidera. In tali situazioni conviene costruire un database partendo da una struttura vuota. Vediamo anche in questo caso un esempio: Dal menù File selezioniamo Nuovo; dal riquadro Attività, invece, selezioniamo “Database vuoto”. Si apre una finestra che richiede di inserire l’ubicazione ed il nome del File. Nel nostro esempio l’ubicazione sarà quella predefinita, mentre il nome del file sarà: clienti. Dopodichè premiamo su “Crea”. La finestra che si apre non contiene alcun oggetto. Selezioniamo, pertanto, “Nuovo” dalla barra degli strumenti per creare una nuova tabella e, successivamente, Creazione guidata Tabella Ok. Compare la prima pagina della creazione guidata. 2/14 È statisticamente probabile che, tra le tabelle disponibili negli ambiti privati e professionali, ne troviamo una che soddisfi le nostre esigenze. Nel nostro esempio selezioniamo Clienti dalle tabelle di esempio dell’ambito professionale. Facciamo clic su pulsante con la doppia freccia >> per copiare tutti i campi nell’elenco “Campi in una nuova tabella” (se avessimo voluto portare singolarmente i campi avremmo utilizzato il comando “singola freccia” > ) e poi facciamo clic su “Avanti”. Nella nuova pagina assegneremo il nome alla tabella (lasciamo il nome predefinito “Clienti”) e decideremo se la chiave primaria sarà assegnata dal sistema oppure da noi (scegliamo la prima opzione). La chiave primaria, ricordiamo, consiste in un campo che rende univoche le voci (record) del database. Possiamo passare alla schermata successiva con l’ennesimo clic sul tasto “Avanti”, e, prima di terminare la creazione guidata con il tasto “Fine”, accertiamoci che l’opzione “Immissione dei dati direttamente nella tabella” sia selezionata. Sia apre così la tabella Clienti la quale presenta orizzontalmente tutti i campi selezionati. Per chiudere la tabella selezioniamo File Chiudi. Durante la creazione guidata vengono generati dei campi con prestabilite proprietà. Le proprietà determinano quali dati possono essere immessi in un campo e come appariranno sullo schermo. C’è da dire che le proprietà impostate da Access sono un buon punto di partenza e spesso non richiedono modifiche. In ogni caso vediamo come comportarci nell’ipotesi qualche proprietà non rispecchi le nostre necessità. Selezioniamo la tabella appena creata (Clienti) e clicchiamo su “Struttura”. La parte superiore della visualizzazione struttura contiene l’elenco dei campi della tabella con la rispettiva tipologia 3/14 Da notare il simbolo della chiave primaria accanto a IDCliente e il rispettivo tipo di dati, pari a “Contatore”; grazie a quest’ultimo, ogni record assegna un numero progressivo al campo “IDCliente”. Per vedere quali dati è possibile inserire con Access, premiamo su un match-code qualunque della colonna Tipo dati (per chiudere l’elenco senza cambiare tipo di dati premiamo “Esc”). L’impostazione del tipo di dati limita l’immissione dei dati a quel tipo specifico. Ogni tipo dati presenta delle proprie “Proprietà campo”, visualizzabili nella parte inferiore della finestra. Analizziamo qualche proprietà campo di qualche tipo dato. La “Dimensione campo “ del tipo di dato “Numerico” determina il tipo di valore che può essere immesso nel campo. Se impostata ad “Intero lungo” il campo accetterà valori compresi tra -2.147.483.648 e + 2.147.483.647 ; se impostata a “Byte” memorizza numeri compresi tra 0 e 255, non memorizzando frazioni; se impostata ad “Intero” memorizza numeri compresi tra -32.768 e 32.767, non memorizzando frazioni; se impostata a “Precisione singola” memorizza numeri negativi tra -3,402823E38 e -1,401298E-45 e numeri7 positivi compresi tra 1,401298E-45 e 3,402823E38, se impostata a “Precisione doppia” memorizza numeri negativi compresi tra -1,79769313486231E308 e 4,94065645841247E-324 e numeri positivi 1,79769313486231E308 e 4,94065645841247E-324; se impostata a “Decimale” memorizza i numeri compresi tra 10^28-1 e 10^28-1 La “Dimensione campo” di un “Testo”, invece, stabilisce il numero di caratteri che possono essere immessi nel campo. Se tentiamo di immettere troppi caratteri, viene visualizzato un avvertimento e non possiamo uscire finchè non rientriamo nei limiti. Il “Formato” di un campo “Data/Ora” regola il modo in cui viene visualizzata una data, indipendentemente dal modo in cui viene inserita. La “maschera di input” del campo “Data e ora” guida l’utente nella compilazione del campo nella visualizzazione Foglio dati, stabilendo i numeri opzionali (quelli indicati con il 9) e quelli obbligatori (indicati con lo 0). La visualizzazione, ripetiamo, resterà dipendente dal “Formato” e non dal modo in cui viene inserita la data. Per esempio, se nella maschera di input scriviamo “00/00/0000;_ “, quando ci troveremo nella visualizzazione foglio dati inseriremo una data del tipo 29/09/2005 ed il segnaposto per ogni numero sarà “_”. Se il formato scelto sarà “Data breve” la data sarà comunque visualizzata nel seguente modo: 29-set-05, non appena premiamo il tasto Invio. Il “Valido se” del campo data, magari accompagnato dal “Messaggio errore”, crea una regola d’inserimento, la quale, se non rispettata, visualizza una comunicazione d’errore. Ad esempio nel campo “Valido se” digitiamo “<Now()” e nel campo “Messaggio errore” scriviamo “La data immessa deve essere antecedente a quella odierna” . Viene così creata una regola che stabilisce che la data immessa deve precedere il momento corrente; in caso contrario comparirà un messaggio d’errore in una finestra d’avviso. Ogni dato, indipendentemente dal tipo, propone una proprietà chiamata “Etichetta”; questa proprietà stabilisce il modo in cui il campo compare nella Visualizzazione Foglio Dati e non è da confondere con il nome “anagrafico” del campo, riportato nella colonna “Nome campo” della Visualizzazione Struttura. Il nome “anagrafico” sarà quello utile quando si farà riferimento al campo. Per passare da una visualizzazione ad un’ altra useremo il menù “Visualizza”. Per eliminare un campo dalla Visualizzazione Struttura, selezioniamo la riga relativa e raggiungiamo il comando “Elimina righe” all’interno della finestra che si attiva premendo il tasto destro del mouse; alla domanda di avvertimento che compare rispondiamo “Sì”. 4/14 Le maschere La maschera è una rappresentazione organizzata e formattata di una tabella o di una query. Vediamo subito come creare una maschera tramite creazione guidata. Ovviamente è consigliabile conoscere a monte la struttura che si vorrà dare alla tabella. Sulla barra Oggetti facciamo clic su Maschera e poi su “Crea una maschera mediante creazione guidata”. Dall’elenco Tabella/Query selezioniamo, appunto, una tabella o una query. Dopodichè, trasportiamo tutti campi dell’elemento scelto (tramite il comando della doppia freccia >>) oppure solo i campi selezionati (tramite il comando che raffigura una sola freccia >) . Premiamo “Avanti” per passare alla seconda schermata, dove sceglieremo il layout da applicare alla maschera, con l’ausilio di un’anteprima. Avanziamo alla terza schermata per scegliere uno stile, e, al successivo clic sul tasto “Avanti”, ci troveremo nell’ultima schermata della creazione guidata, dove possiamo indicare il nome della maschera e scegliere un’opzione tra aprire l’oggetto o modificare la struttura. Per concludere premiamo “Fine”. Una volta creata una maschera in maniera guidata possiamo perfezionarla tramite la Visualizzazione struttura. Si seleziona anzitutto la maschera interessata dall’oggetto Maschera, e poi si clicca sul tasto “Struttura”. Citiamo qualche esempio di variazione proprietà. Per modificare l’aspetto di un’etichetta (carattere, grandezza, stile, allineamento, colore di sfondo, colore), la selezioniamo ed utilizziamo i componenti della barra della formattazione. Selezionando un elemento “Etichetta” o “Casella di testo” e premendo su di esso il tasto destro del mouse, apparirà un menù di scelta rapida all’interno del quale selezioneremo l’opzione “Proprietà”. Si apre la finestra della proprietà. Da questa selezioniamo “Ombreggiato” in corrispondenza della proprietà “Aspetto”. L’etichetta o la Casella di Nel riquadro Proprietà è presente anche l’opzione Sinistra, che sancisce lo spazio tra l’etichetta e la casella di testo. Casella di testo Etichetta Per cambiare lo sfondo all’intera maschera, selezioniamo “Maschera” nell’elenco a discesa nella parte superiore, e successivamente l’opzione “Immagine”, seguita dall’icona rappresentata da tre puntini (…) e dalla selezione dell’immagine. 5/14 Previo selezione, possiamo spostare un’etichetta e una casella di testo (che agiscono come un unico blocco per default) con l’ausilio del mouse, nel momento in cui il cursore diventa una mano. Puntando su una linea orizzontale tra il corpo e “l’ Intestazione maschera” o tra il corpo ed il “Piè di pagina”, il cursore assume la forma di una doppia freccia; a questo punto trasciniamo il selettore verso il basso, in modo da allargare una delle due sezioni. Intanto dovrebbe essere comparsa la “Casella degli strumenti”; in caso contrario selezioniamo Visualizza Barra degli strumenti Casella degli strumenti. Volendo inserire un’ immagine, selezioniamo un file dalla finestra “Inserisci immagine”, la quale diventa visibile dopo che abbiamo premuto il pulsante “Immagine” dalla casella degli strumenti e trascinato il relativo rettangolo d’inserimento con il tasto sinistro del mouse. Volendo, invece, aggiungere un titolo, facciamo clic sul comando “Etichetta” della barra degli strumenti e trasciniamo il relativo rettangolo. Facendo clic con il tasto destro del mouse sulla barra del titolo e selezionando “Proprietà”, compare la finestra “Maschera”; impostando “Selettori record = No” e “Barre di scorrimento = No” non si vedranno più (una volta andati sulla modalità di visualizzazione Maschera) la barra lungo il margine sinistro e le barre di scorrimento. Relativamente al campo della chiave primaria settata come “Contatore” (che è fornita dal programma e non deve essere modificata), è possibile variare da “Sì” a “No” l’opzione “Abilitato” nella cartella “Dati” della finestra “Proprietà” (attivabile con il tasto F4). In questo modo, il campo in questione, risulta non attivato durante la visualizzazione in modalità “Maschera”. Il modo più veloce per creare una maschera che includa tutti i campi di una tabella è utilizzare la Creazione guidata maschera standard. Dalla barra degli oggetti si fa clic su “Maschere” e poi si fa clic su “Nuovo” dalla barra degli strumenti. Dalla finestra di dialogo “Nuova maschera” che compare (e dove sono elencati tutti i possibili modi per creare una maschera), prima di premere “OK”, selezioniamo una maschera standard (a colonne per esempio) e una tabella o una query come origine dei dati. Dopo un attimo compare una nuova maschera in visualizzazione maschera. In access è possibile creare delle relazioni, ossia un’associazione di campi comuni appartenenti a tabelle diverse. Immaginiamo ad esempio di avere una tabella chiamata “Categoria” e una tabella chiamata “Portate” ed entrambe contengono un campo chiamato “nomecategoria”. In questo modo è possibile avere una relazione tra le due tabelle, in quanto ogni portata è in un “nomecategoria” ed ogni “nomecategoria” contiene più portate. Questo tipo di relazione è chimata “uno-amolti” ed è la più comune. Esistono altri due tipi di relazioni ma sono meno comuni: Uno-a-uno, dove ogni record di una tabella A può avere un solo record correlato nella tabella B Molti-a-molti, nel caso in cui, ad esempio, un prodotto compare in molti ordini ed ogni ordine può includere molti prodotti. Per attivare una relazione si seleziona il pulsante relativo dalla barra degli strumenti. Pulsante “Relazioni” In questo modo si apre la finestra “Relazioni”. Se la finestra “Mostra tabella” non è visualizzata, facciamo clic sul pulsante “Mostra tabella” sulla barra degli strumenti. Pulsante “Mostra tabella” 6/14 Con la finestra “Mostra tabella” attivata facciamo un doppio clic su ognuna delle due tabelle interessate, per poi passare alla finestra “Relazioni” cliccando il tasto “Chiudi” . Trasciniamo quindi il campo comune da una tabella ad un’altra. Si apre la finestra di dialogo “Modifica relazioni” nella quale sono elencati i campi che abbiamo scelto di correlare e una linea che rappresenta la relazione uno-a-molti (per eliminare una relazione basta eliminare proprio questa linea, cliccandoci sopra con il tasto destro del mouse e selezionando il comando “Elimina”); sono inoltre disponibili altre opzioni. Applica integrità referenziale (che assicura che le relazioni tra record nelle tabelle correlate siano valide e che non vengano accidentalmente eliminati o modificati dati correlati) Aggiorna campi correlati a catena (che si attiva solo se selezionata l’opzione Applica integrità referenziale), che permette di aggiornare automaticamente il valore corrispondente in tutti i record correlati quando si modifica una valore chiave primaria nella tabella principale. Elimina record correlati a catena (che si attiva solo se selezionata l’opzione Applica integrità referenziale), elimina tutti i record correlati nella tabella collegata quando si elimina un record nella tabella primaria. Per attuare la relazione basta premere il tasto “Crea”. In Access abbiamo la possibilità di creare delle maschere con all’interno delle sottomaschere, in modo da avere sotto controllo, durante la visualizzazione, dati inerenti al record visualizzato. Per creare una maschera con relativa sottomaschera possiamo seguire la seguente procedura: dalla barra “Oggetti” facciamo clic su “Maschere” e poi su “Nuovo” dalla barra degli strumenti. Dalla finestra “Nuova maschera” che si apre selezioniamo “Creazione guidata Maschera” ed indichiamo la tabella di base. Poi premiamo su “Ok”. Nella seconda schermata della creazione assistita indichiamo i campi che vogliamo selezionare (clicchiamo sulla doppia freccia “>>” per indicarli tutti). Prima di avanzare, selezioniamo la tabella di base per la sottomaschera dal menù “Tabelle/query”, riportando anche per quest’ ultima i campi che ci interessano (magari selezionando ancora una volta la doppia freccia “>>”). Nelle due schermate successive indicheremo il tipo di layout e lo stile della maschera, mentre nell’ultima schermata possiamo assegnare il nome alla tabella. Per concludere clicchiamo sul tasto “Fine”. 7/14 Trovare informazioni Un database assume un significato solo quando riesce a restituire velocemente un record. Vediamo in che misura Access è sensibile a questo “problema”. Anzitutto analizziamo la possibilità di ordinare le informazioni, precisando che l’ordinamento dei numeri trattati come testo (come ad esempio i numeri telefonici) non è così scontato come potrebbe sembrare. In questi casi, infatti, vengono applicate le regole dell’ordinamento alfabetico. Pertanto si potrebbe avere un elenco ordinato in questo modo: 1 2 22 234 3 31 4 Per risolvere problemi del genere (cioè ordinare un elenco testo che contiene dei numeri come se fosse realmente un elenco numerico) basta rendere i testi della stessa lunghezza, anteponendo, ove necessario, dei simboli “zero”. L’elenco precedente diventerebbe in tal caso ordinato come nel seguente modo: 001 002 003 004 022 031 234 Per ordinare una tabella (visualizzata in modalità “Foglio dati”), in senso crescente o decrescente in base ad una colonna, è sufficiente porsi all’interno della colonna interessata e premere sui relativi tasti presenti sulla barra degli strumenti chiamata “Foglio dati tabella” tasti di ordinamento crescente e decrescente Nella maschera valgono le stesse regole: si apre la maschera in “Visualizzazione maschera” , ci posizioniamo all’interno di un campo, e premiamo i tasti di ordinamento crescente e decrescente dalla barra degli strumenti “Visualizzazione Maschera”. Una volta ordinata una tabella (o una maschera) continueremo ad avere a che fare con l’intero elenco. Se il nostro obiettivo è invece quello di estrapolare da un contesto solamente i dati che rispondono ad un determinato criterio presente in uno o più campi, uno dei comandi filtro presenti in Access soddisferà le nostre esigenze. Per filtrare i dati presenti in una tabella, anzitutto apriamo la stessa in modalità “Visualizzazione foglio dati”. Dopodichè poniamoci con il cursore sul campo di nostro interesse ed eseguiamo una delle seguenti operazioni: Premiamo il pulsante “Filtro in base a selezione” sulla barra degli strumenti per visualizzare solamente i record che presentano il campo da noi selezionato; Per rimuovere un filtro, ricordiamo, si preme sempre il pulsante “Rimuovi Filtro” dalla barra degli strumenti. Premiamo il tasto destro del mouse, apriamo il menù di scelta rapida e selezioniamo “Filtro in base ad esclusione” se vogliamo nascondere i record che contengono il valore presente nel campo dove lampeggia il cursore. 8/14 Premendo il tasto destro del mouse si sarà potuto notare l’opzione “Filtro per” seguito da una casella di testo. In questa casella di testo si può inserire direttamente il valore da ricercare nel campo indicato, senza doverlo per forza selezionare a monte (operazione molto difficile di fronte a grossi database). In questo contesto è possibile “giocarci” i caratteri “Jolly”. Cosa sono i caratteri Jolly? Quando dobbiamo specificare un criterio di ricerca ma non conosciamo con certezza un carattere o un insieme di caratteri, possiamo utilizzare i caratteri jolly come segnaposti. I caratteri jolly più comuni sono: “*” – Corrisponde a qualunque numero di caratteri. Ad esempio l’espressione “Ro*” restituisce campi come “Roma”, “Rovigo”, etc. ovvero tutti i campi che iniziano per “Ro” e presentano qualsiasi numero di lettere sucessivamente. “?” – Corrisponde a un qualsiasi carattere alfabetico. Ad esempio l’espressione “?ara*” restituisce campi come “Lara”, “Mara”, “Sara”, etc. ovvero tutti i campi che terminano con “ara” ed hanno quattro lettere. “#” – Corrisponde a un qualsiasi numero. Ad esempio l’espressione “1##*” restituisce campi con valori contenuti tra 100 e 199. Quando applichiamo un filtro ad un elenco, quest’ultimo, ovviamente, si riduce per presentare solo i record indicati. Una volta ottenuto quest’elenco filtrato è possibile applicare un ulteriore filtro, in modo da avere una selezione più dettagliata. Filtro in base a selezione Applica filtro / Rimuovi filtro Filtro in base A maschera Il comando “Filtro in base a maschera” fornisce un modo veloce per filtrare una tabella in base alle informazioni contenute in più campi. Aprendo una tabella e facendo clic sul pulsante “Filtro in base a Maschera” vedremo un semplice foglio dati dove ciascuna cella è, in realtà, una casella combinata che contiene tutti i valori relativi al campo. Una volta effettuata una scelta nell’elenco premeremo su “Applica Filtro” per visualizzare solo i record richiesti. La scelta, ricordiamo, può essere eseguita anche con l’ausilio del carattere jolly “*”. Quando si esegue una ricerca si attiva un’ulteriore scheda chiamata “Oppur” per aggiungere un’ulteriore criterio di ricerca. Il Filtro in base a maschera è utilizzato anche nelle versioni “maschere” delle tabelle. Per attivarlo: Oggetti Maschere apriamo la maschera Filtro in base a maschera indichiamo il criterio di selezione premiamo su “Applica filtro”. Infine scorriamo i record con i selettori di record. 9/14 Selettori record Per ricerche più complesse (ad esempio cercare la lista degli ordini spediti agli stati dell’area medio-occidentale fra due determinate date), possiamo utilizzare il comando “Ordinamento/filtro avanzato” Per raggiungere quest’opzione si apre una tabella in visualizzazione foglio dati; si punta al menù “Record”, poi all’opzione “Filtro” e poi ancora su “Ordinamento/filtro avanzato”. Si apre così la finestra del filtro e l’elenco dei campi della tabella esaminata. Se la griglia non è vuota premiamo il comando Modifica Cancella griglia. Facciamo un doppio clic sui campi che vogliamo riportare nella griglia di struttura. Possiamo a questo punto indicare le norme di ricerca nel campo “Criteri”, facendo uso, se necessario, del comando “Or” (per esempio nella scelta di un genere di film si potrebbe scrivere: “drammatico” Or “comico”) prima di premere il comando “Applica filtro/ordina” per visualizzare i record che corrispondono ai criteri. Volendo si potrebbe sfruttare anche l’opzione “Oppure” Se desideriamo lavorare con più tabelle, i filtri non sono più necessari e dobbiamo ricorrere alle query. Possiamo creare una query partendo da zero o mediante creazione guidata. Vediamo in ordine le due possibilità. Dalla barra degli oggetti selezioniamo query e poi “Crea una query nella visualizzazione Struttura”. Si apre la finestra “Mostra tabella” dalla quale aggiungeremo le tabelle che ci interessano prima di premere il tasto di chiudi. Compare la finestra query che presenta le tabelle aggiunte come caselle nella parte superiore. Ogni casella presenta un asterisco (che rappresenta tutti i campi della casella stessa), la chiave primaria in grassetto e il restante elenco dei campi. Inoltre una linea tra caselle testimonierebbe una relazione tra le stesse. Se vogliamo aggiungere caselle in un secondo momento facciamo clic sul tasto “Mostra tabella” sulla barra degli strumenti. pulsante “Mostra tabella” Per includere i campi nella query eseguiamo un doppio clic sul campo stesso. Premendo due volte sull’asterisco includeremo tutti i campi nella query, ma dobbiamo poi trascinare anche i campi singoli sulla griglia se desideriamo aggiungere condizioni. Una volta terminata la fase di inserimento campi possiamo applicare i Criteri in corrispondenza della riga relativa (“Criteri”). Esempi di criteri da aggiungere sono: >, <, =, <> (diverso), s* (iniziante con una determinata lettera), >= (maggiore o uguale), <= (minore o uguale). Se vogliamo inserire un calcolo anzitutto ci posizioniamo nella prima colonna vuota della griglia in corrispondenza della riga “Campo”; poi facciamo clic su “Genera, per aprire la finestra “Generatore di espressioni” pulsante “Genera”. Da questa finestra possiamo impostare dei calcoli. Per esempio se vogliamo eseguire un’addizione tra due valori eseguiamo i seguenti passaggi: 1. clicchiamo sul tasto “=”; 10/14 2. Facciamo clic sul segno “+” di “Tabelle” e raggiungiamo prima la tabella e poi il campo interessato (nella seconda colonna), eseguendo su quest’ultimo un doppio clic per farlo visualizzare nel riquadro superiore; 3. dalla barra dei pulsanti operatore (sotto la casella di espressione) clicchiamo sul tasto “+”; 4. ripetiamo il punto due per includere il secondo termine dell’addizione; 5. facciamo clic su “ok”; 6. cambiamo (facoltativo) il nome “Espr1” che è stato assegnato all’espressione con un nome più significativo. Per eseguire una query premiamo il punto esclamativo dalla barra degli strumenti. pulsante “Esegui” Una volta che salviamo una query, invece, questa presenterà i criteri di selezione scelti alla riapertura, a differenza dei filtri che sono da ritenersi temporanei. Come anticipato, è possibile creare una query mediante creazione guidata. Se dobbiamo importare due tabelle è propedeutico stabilire una relazione tra esse. Dalla “Barra oggetti” selezioniamo “Query” e facciamo doppio clic su “Crea una query mediante una creazione guidata”, aprendo, così, la prima pagina della “Creazione guidata Query semplice”. Dall’elenco Tabelle/Query selezioniamo le tabelle che ci interessano, trasferendo, di volta in volta, i campi utili dalla sezione “Campi disponibili” a “Campi selezionati”. Dopodichè andiamo “Avanti” per giungere alla seconda schermata, dove possiamo accettare l’opzione predefinita (“Dettaglio”) inerente alla visualizzazione dei dettagli nel risultato della query. Avanziamo ancora per scegliere il nome della query e terminare la creazione guidata. È da notare un particolare nella visualizzazione struttura di una query: si potrebbe decidere (tramite la riga “Ordinamento”) di ordinare la visualizzazione foglio dati di una query in senso crescente o decrescente rispetto ai valori di un campo e, contemporaneamente , decidere di non mostrare quel campo (eliminando il segno di spunta dalla relativa casella di controllo “Mostra”). Il campo in questione produrrà il proprio effetto nella visualizzazione foglio dati senza essere mostrato. Ovviamente un campo può “contribuire” senza essere mostrato non solo con l’ordinamento ma anche con calcoli e criteri di selezione. Affinché la query restituisca solamente i record compresi in un certo intervallo (temporale o numerale) stabilito di volta in volta all’apertura della query stessa, nel campo “criteri” della colonna interessata scriviamo la seguente formula: Between [inizio intervallo] And [fine intervallo] In alcuni casi potremmo essere interessati a vedere solamente un riepilogo dei record e non tutti i dettagli. Queste operazioni sono rese possibili dalle “funzioni di aggregazione”, di cui vediamo l’elenco dei più comuni: Funzione Somma Media Conteggio Min Max Calcolo Somma dei valori di un campo Media dei valori di un campo Conteggio dei valori non “Null” di un campo Valore minimo di un campo Valore massimo di un campo 11/14 Per applicare una funzione di aggregazione procediamo come segue: tabella oggetti query Crea una query in visualizzazione struttura. Dalla finestra di dialogo “Mostra tabella” facciamo un doppio clic sulla tabella che ci interessa e poi un solo clic sul tasto “Chiudi”. Selezioniamo con un doppio clic i campi che vogliamo portare nella griglia di struttura. Effettuata questa scelta clicchiamo il pulsante “Totali” sulla barra degli strumenti. pulsante “Totali” Si aggiunge una riga denominata “Formula” alla griglia struttura, dalla quale, in corrispondenza della colonna pertinente, effettueremo la scelta della funzione con l’ausilio del match-code, prima di eseguire la query. 12/14 Immettere dati corretti Quando sono utilizzate le maschere di input nella struttura di una tabella, gli utenti che immettono informazioni possono vedere subito il formato e la lunghezza richiesti per i dati di tipo testo, numerico, data e ora e valuta. La proprietà “Maschera di input” è composta da tre sezioni separate dal punto e virgola (;). La prima sezione contiene sia i caratteri che fungono da segnaposto sia caratteri (come parentesi o lineette) che controllano l’aspetto. La seconda (come la terza) sezione della maschera di input è opzionale. Nella seconda sezione se scriviamo 1 (o la lasciamo vuota) verranno memorizzati solo i caratteri immessi; se scriviamo “0” verranno inclusi anche i caratteri della maschera. Il carattere nella terza sezione rappresenta il segnaposto visualizzato in luogo dei caratteri che devono essere immessi; se omessa il segnaposto sarà rappresentato dal segno “_” (underscore). Vediamo i più comuni caratteri delle maschere di input: Carattere 0 9 # L ? A a & C < > ! \ Password Descrizione È richiesta una cifra Cifra o spazio opzionale Cifra o spazio opzionale; le posizioni vuote vengono convertite in spazi. È richiesta una lettera Lettera opzionale È richiesta una lettera o una cifra Lettera o cifra opzionale È richiesto un qualunque tipo di carattere o uno spazio Carattere opzionale di qualunque tipo o uno spazio Tutti i caratteri che seguono vengono convertiti in minuscolo Tutti i caratteri che seguono vengono convertiti in maiuscolo I caratteri inseriti nella maschera vengono immessi da sinistra a destra. Il punto esclamativo può essere incluso in qualsiasi punto della maschera di input. Il carattere che segue viene visualizzato come carattere letterale Crea una casella per l’immissione di una password. Qualunque carattere digitato nella casella viene memorizzato come carattere ma è visualizzato come asterisco (*). Qualunque altro carattere non incluso nell’elenco è visualizzato come carattere letterale. Se desideriamo utilizzare uno dei caratteri della tabella come carattere letterale dobbiamo farlo precedere dal carattere \ . Possiamo utilizzare la creazione guidata della maschera di input per selezionare un formato predefinito oppure per creare un nuovo formato. Premendo sui tre puntini “…” accanto alla casella della maschera di input si apre la “Creazione guidata maschera di input”. Per usufruire di un formato proposto, basta selezionarlo ed andare avanti fino alla fine (scegliendo il segnaposto nella seconda schermata). Se invece vogliamo creare un nuovo formato facciamo dapprima clic sul pulsante “Modifica elenco” e successivamente sul pulsante “Nuovo record” che si trova sul fondo della finestra di dialogo che appare. Indicheremo la descrizione, la maschera di input, il segnaposto ed un dato di esempio prima di chiudere la finestra. Una regola di convalida è un’espressione che definisce le informazioni che verranno accettate in un campo di un record. Per applicare una regola di convalida agiamo sulla proprietà campo “Valido se” dalla visualizzazione struttura di una tabella. Vediamo qualche esempio di regola di convalida: Like “206*” Or Like “425*”; in questo modo si impedisce che vengano inseriti dei valori che iniziano con delle cifre diverse da 206 e 425. 13/14 [CampoData]<[Data2]; in questo modo si stabilisce che la data scritta nel campo Data2 deve essere maggiore di quella scritta nel campo chiamato “CampoData”. Il campo messaggio d’errore stabilisce, invece, il messaggio che deve comparire nel caso venga violata una regola di convalida. Al fine di rendere possibile la ricerca dei dati ad un database è necessario, da parte degli utenti, inserire le informazioni in maniera univoca. È possibile limitare le opzioni d’inserimento dati agli utenti tramite un campo booleano (selezionando il tipo dati “Sì/No” dalla struttura di una tabella) o anche tramite una casella combinata, in modo da visualizzare l’elenco delle scelte disponibili attraverso il relativo matchcode. Per creare quest’ultima soluzione dalla struttura di una tabella scegliamo come tipo dati “Ricerca guidata”. Si apre la finestra “Ricerca guidata” che ci chiede in che modo dovranno essere caricati i valori nella colonna di ricerca: se tramite un’elenco precostituito in una tabella o in una query oppure tramite un’immissione personalizzata. Solitamente si sceglie la prima soluzione per elenchi molto lunghi o che variano spesso; la seconda soluzione per i rimanenti casi. Selezionando “Immissione personalizzata” ed avanzando, dovremmo indicare il numero di colonne e il contenuto delle celle nella seconda schermata, e l’etichetta da utilizzare per la colonna ricerca nella terza schermata, prima di premere “Fine”. Mentre se selezioniamo “Ricerca valori in una tabella o query da parte della Colonna Ricerca” ed avanziamo, dovremmo indicare la tabella (o la query) nella seconda schermata, i campi che ci interessano nella terza schermata, il senso di ordinamento dei campi (crescente o decrescente) nella quarta schermata, la larghezza della colonna nella quinta schermata, l’etichetta da utilizzare per la Colonna Ricerca nella sesta schermata, prima di cliccare su “Fine”. Per concludere salviamo la tabella Le informazioni che sono state immesse sono visibili nella sezione “Origine riga” della cartella “Ricerca” e, per renderle le uniche scelte possibili dalla visualizzazione Foglio Dati, impostiamo il campo “Solo in elenco” a “Sì”. Quando vogliamo cancellare dei record possiamo eseguire l’operazione scorrendo la tabella e cancellando i record manualmente oppure, se tutti i record da cancellare corrispondono a qualche schema, possiamo utilizzare una query di eliminazione per cancellarli tutti in una sola operazione. Per eseguire quest’ultima operazione andiamo anzitutto sulla visualizzazione struttura di una query, per poi selezionare il comando Query Query di eliminazione. Nella riga “Criteri” ed in corrispondenza della colonna desiderata, andremo ad indicare il criterio contenuto dai record da eliminare. Per verificare se la query è corretta, facciamo clic sul pulsante Visualizza in modo da far comparire i record che verranno eliminati. Se l’elenco è corretto, ritorniamo sulla visualizzazione struttura e premiamo il pulsante “esegui” (compare una finestra di messaggio con l’avviso che l’operazione che stiamo eseguendo è irreversibile; premiamo “Sì”). Se ritorniamo su Visualizza, troveremo un elenco aggiornato. A questo punto se pensiamo di riutilizzare la query in futuro la salviamo; mentre se sappiamo di non riutilizzarla o abbiamo la preoccupazione che qualcuno possa accidentalmente eseguirla decideremo di non salvarla o di salvarla come query di selezione. In quest’ultimo modo possiamo sempre aprire la query di selezione in visualizzazione struttura e convertirla in query di eliminazione quando vogliamo eseguirla di nuovo. Quando cancelliamo i record da un database dobbiamo tenere conto che se la tabella che contiene i record ha una relazione con un’altra tabella e per tale relazione è impostata l’opzione “Elimina record correlati a catena”, i record della seconda tabella verranno anch’essi cancellati. Talvolta questo corrisponde ai nostri desideri talvolta no. Per esempio non vorremo cancellare i record di vendite precedenti quando eliminiamo i corrispondenti prodotti oramai obsoleti. Esistono due soluzioni a questo problema: a) effettuare il backup (la copia) del database prima di cancellare i record; b) creare una nuova tabella (magari denominata “tabellaeliminati” e quindi spostare nella nuova tabella i record che desideriamo cancellare). 14/14