Come usare Access (Le query)

Stampa
( 0 Votes ) 
Valutazione attuale:  / 0
ScarsoOttimo 
Categoria: Informatica
Data pubblicazione
Scritto da Fragger Visite: 3125

Come usare Access ('Le Query') [2° Parte]

Le Query sono operazioni di interrogazione sui dati provenienti da una o più tabelle. Esse consentono di visualizzare, modificare e analizzare i dati contenuti nella tabelle in  diversi modi, inoltre è possibile utilizzarle come origini record per maschere e report, al posto delle tabelle. Il tipo più comune di query è la query di selezione, che consente di recuperare i dati da una o più tabelle utilizzando i criteri specificati e di visualizzarli nell'ordine desiderato. In sostanza cosè una query?
Si tratta di una tabella virtuale basata su una o più tabelle, ma che non esiste come tabella a sé stante nel database corrente ma i dati provengono sempre da tabelle reali. Per costruire nuove Query si utilizza la modalità 'Visualizzazione Struttura', che si richiama dal menu appropriato, e ci appare come in figura. Cercheremo ora di analizzare in dettaglio per capire come è fatto l'ambiente di definizione di progettazione e test delle nuove query.

L'immagine è stata ridimensionata. Clicca qui per vedere l'immagine ingrandita. Le dimensioni originali sono 806x426
Notiamo che la finestra si compone di 2 parti, quella superiore, nella quale si inseriscono una o più tabelle contenenti i dati di origine e quella inferiore, nella quale verranno trascinati  i campi da estrarre ed impostare i criteri di filtro o di ordinamento. Notare che ad ogni colonna della parte inferiore corrisponde un campo, che questo può appartenere a tabelle differenti e che può essere mostrato (nella query) oppure no.
Il significato del rigo Criteri è il seguente: l'espressione che verrà eventualmente inserita nella casella viene valutata per ogni riga (record) della tabella e quindi agisce come un filtro, in altre parole assume il significato di: mostrami solo i records per i quali il campo 'X' è uguale, minore o inferiore, o diverso da o uguale a all' espressione impostata nella riga criteri.
L'espressione può fare riferimento al contenuto di un qualsiasi controllo presente in una maschera o report, a condizione che l'oggetto sia aperto al momento di esecuzione della query, può fare riferimento  ad un valore costante, ad una variabile da definire a livello di modulo o di sub-routine pubblica oppure ancora al nome di un parametro passato alla query stessa, e per la quale verrà mostrata una finestra di input all'utente, Oltre alla riga Criteri notiamo anche una riga Oppure che, entrambe, si ripetono per ogni colonna. Definiamo il significato di queste due righe.
Quando inseriamo due espressioni, sullo stesso rigo Criteri,  ma a colonne diverse, i 2 criteri dovranno essere soddisfatti contemporaneamente perchè il record possa essere estratto e quindi inserito nei risultati della query: abbiamo applicato l'equivalente operatore AND. Mentre utilizzando la righa Oppure,  applichiamo l'equivalente operatore OR. Le due righe possono essere usate contemporaneamente.

Infine abbiamo una righa Mostra  che contiene una casella di opzione che, se spuntata (True/Vero/Si), mostra il relativo campo, se deselezionata (False/Falso/No) il campo viene nascosto nel set di record risultatnte.



Le query si dividono i 2 principali categorie :
- le Query di Selezione (estraggono ma non modificano dati nel  database)
- le Query di Comando (servono proprio a modificare i dati)
Tipi di query di comando:

Di accodamento Aggiunge record a un set di risultati della query alla fine di una tabella esistente.
Di eliminazione Elimina un set di righe che soddisfano i criteri specificati.
Di creazione tabella Crea una nuova tabella dal set di risultati di una query esistente.
Di aggiornamento Modifica un set di record in base ai criteri specificati.
 Creazione di una Query di Selezione



La fugura mostra la finestra di progettazione della query (che ormai conoscete bene). Access assegna sempre un nome provvisorio alla query,(Query1, Query2, Query3) ecc. La prima operazione da fare è quella di aggiungere una tabella o più tabelle, attraverso la scheda 'Mostra tabella', che si apre automaticamente all'apertura della finestra di progettazione delle query e nella quale contiene l'elenco delle tabelle presenti nella finestra degli oggetti di Access. Selezionando una tabella e premendo il pulsante Aggiungi, questa verrà posizionata nella finestra superiore, riservata alle tabelle. Vengono mostrati i nomi dei campi e (notare) un asterisco (*) in prima posizione della lista. La seconda operazione è quella di selezionare i campi e trascinarli nella finestra sottostante, pronti per essere visualizzati. Per fare questo, posizionare il puntatore del mouse sul nome del campo all'interno della lista e trascinarlo in una colonna, rilasciando il pulsante del mouse. Automaticamente il checkbox corrispondente Mostra, si 'spunta', segnalandoci che il contenuto di quella colonna verrà mostrato quando passiamo dalla modalità Progettazione alla modalità Visualizzazione foglio dati della query. Stessa oprazione per gli altri campi rimanenti o quelli che si ritiene opportuno. Se tutti i campi devono essere visualizzati, ecco che entra in scena l'asterisco . Doppio click del mouse sull'asterisco e nella prima colonna, nella riga Campo verrà inserito il nome della Tabella con l'asterisco sulla destra. Le figure sottostanti mostrano le due operazioni descritte.



L'immagine è stata ridimensionata. Clicca qui per vedere l'immagine ingrandita. Le dimensioni originali sono 819x310
Premendo il tasto destro del muose all'interno della finestra superiore o sulla barra del titolo della Query, apparirà un menu veloce per la scelta di visualizzazione in modalità foglio dati, della Query appena creata. La figura in alto, mostra il risultato. Questa query, dopo averla salvata, può essere utilizzata come Origine record di una maschera o per un Report. A titolo puramente informativo, è sconveniente utilizzare una query del genere in quanto è più efficente selezionare direttamente una tabella, come Origine record nelle proprietà di una maschera o un Report. A senso invece progettare una Query come Origine record se si ha la necessità di utilizzarla come filtro dati, utilizzando proficuamente la riga dei Criteri, nella griglia riservata ai campi della tabella. Vediamo quali sono le potenzialità di questa riga.

Se ad esempio vogliamo mostrare tutti i componenti appartenenti solo alla categoria 'Transistor', nella colonna corrispondente alla categoria, scriviamo semplicemente "transistor" oppure tutti i componenti che hanno una quantità minore di 55, scriviamo nella colonna Quantità la seguente espressione: < 55  oppure > 10  (per quantità maggiori di 10) o ancora < = 244 (per quantità minori uguali a 244) e via di seguito. Questo per le espressioni semplici. Vediamo ora di utilizzare l'operatore And 0 Or.

 

Uso dell'operatore And

Vogliamo mostrare tutti i componenti che iniziano con 'BC' e con quantità maggiore di 5. Dobbiamo scrivere due espressioni: una nella colonna Componneti e l'altra nella colonna Quantità.



Osservate attentamente la riga dei Criteri. Le due espressioni sono sulla stessa riga.

 

Quindi l'operatore And determina se il valore di un'espressione è compreso in un intervallo di valori specificato.

 



L'operatore Like è utilizzato per confrontare due stringhe.

 

Uso dell'operatore Or

 Vogliamo mostrare tutti i componenti che iniziano con 'BC' o tutti i componenti apparteneti alla categoria 'progetti'


Osservate attentamente la riga dei Criteri e della riga Oppure. Le due espressioni sono su righe diverse.

 

Quindi l'operatore Or è  utilizzato per eseguire una disgiunzione logica tra due espressioni.

 

 

 

Uso di un controllo


Nella righa Criteri è possibile l'uso di un controllo posto in una maschera o di un Report. L'espressione in questo caso risulta un po più complessa. Infatti dal momento che nell'espressione è presente un controllo della maschera o report, bisogna indicare il riferimento a qui il controllo appartiene.

[Forms]![Aggiorna]![Componente] = [Componente] appartiene all'insieme Controls della maschera [Aggiorna] che a sua volta appartiene all'insieme [Forms].

In conclusione il risultato della Query sarà quella di visualizzare solo un record dove il campo Componente sarà uguale a quello del controllo della maschera o dell'espressione.

Nell' espressione quì riportata,  può essere inserito anche l'operatore LIke : Like "*" & [Forms]![Aggiorna]![Componente]

 

 Query Parametrizzate 



La query con parametri è un tipo di query di selezione che estende la flessibilità della query, richiedendo l'immissione di determinati criteri a ogni esecuzione. In realtà, le query con parametri non rappresentano un tipo di query distinto ma, piuttosto, estendono la flessibilità della query. I parametri immessi nella riga Criteri sono parametri statici, ad eccezzione quelli che fanno riferimento a controlli sulle maschere o report. Se vogliamo modificarli, dobbiamo necessariamente aprire l'ambiente di progettazione della query e modificarli manuamente. Access ci offre una possibilità di immettere uno o più parametri personalizzati, attraverso la scheda Parametri query,che in figura. Nella colonna Parametro introduciamo la variabile Parametro mentre sulla destra, nella colonna Tipo dati, il tipo di variabile, numerico,testo, ecc. Nella Query, n corrispondenza della colonna o colonne di campo, che vogliamo parametrizzare, inseriamo, con lo stesso nome, la variabile o le variabili che abbiamo definito nella scheda Parametri query. Salviamo il tutto e, quando andiamo ad aprire la query, prima che questa entri in esecuzione, ci viene mostrata una piccola scheda che ci invita ad inserire un valore in un controllo, che è esattamente quello che abbiamo definito nella colonna Parametro, della scheda Parametri query. Verranno mostrate tante schede quanti parametri abbiamo definito. Al termine, la query mostrerà il risultato in base ai parametri inseriti. La figura mostra le schede di immissione dei parametri.

 

 Alla prossima!!
Joomla 1.7 Templates designed by College Jacke