Query |
La
funzionalità di un Database sta nella sua capacità di visualizzare i dati
desiderati organizzati secondo un certo ordine. Una query è uno strumento
che consente di porre domande sui dati memorizzati. Le più frequenti sono
quelle di selezione che consentono di visualizzare i dati delle tabelle,
analizzarli ed eventualmente modificarli. I dati richiesti vengono
visualizzati in un Dynaset che mostra un insieme dinamico di dati
provenienti da una o più tabelle.
E' possibile immettere e modificare i dati nei campi del dynaset così come in una tabella : le modifiche avranno effetto sulle tabelle di origine dello stesso Database . Con le query è possibile :
|
Creazione di una Query |
E' possibile creare una query tramite l'autocomposizione oppure manualmente, scegliendo la Visualizzazione struttura. |
Autocomposizione Esistono 4 modi diversi di creare delle query con l'autocomposizione: Autocomposizione query semplice: Crea una query di
selezione sulla base dei campi selezionati. È il tipo più comune di query.
Autocomposizione query a campi incrociati: Crea una query a campi incrociati per visualizzare dati in un formato compatto simile ad un foglio di calcolo Autocomposizione ricerca duplicati: Crea una query per trovare record con valori di campo duplicati in una singola tabella o query Autocomposizione ricerca dati non corrispondenti: Crea una query per trovare in una tabella i record che non hanno record correlati in un'altra tabella. |
Visualizzazione struttura Nella finestra mostra tabella che si apre, si deve selezionare la tabella o la query (o entrambe) che interessa nella rispettiva scheda cliccando poi sul pulsante Aggiungi (per selezionare più voci in ordine sparso, cliccare tenendo premuto Ctrl, per selezionare tutte le voci cliccare sulla prima e poi sull'ultima tenendo premuto Maiusc oppure cliccare sulla prima e trascinare) e infine su Chiudi. |
Nella finestra Query di selezione verrà visualizzato un elenco di campi: si può cliccare sul nome di un campo e trascinarlo nella riga sottostante chiamata Campo ; ciascuna colonna contiene delle informazioni relative al campo incluso nella query . Per aggiungere più campi basta selezionare quelli desiderati tenendo premuto Ctrl e trascinarli poi tutti assieme nella griglia QBE (query tramite esempio : query by example). ; per aggiungere tutti i campi assieme si deve selezionare l'asterisco posto in cima all'elenco dei campi e trascinarlo nella griglia. Se sono state scelte più tabelle, si potrebbero vedere delle linee che le uniscono (join) e mostrano il modo in cui un record di una tabella è correlato al record di un'altra. |
Tipi di visualizzazione di una Query |
La finestra query dispone di tre tipi di visualizzazione:
|
Operazioni e modifica di Query |
Ridisposizione, inserimento ed eliminazione di campi Per spostare un campo si deve :
Per eliminare un campo, dopo averlo selezionato basta premere il tasto Canc. E' possibile eliminare tutti i campi nella griglia QBE scegliendo il comando Cancella griglia del menu Modifica. Per modificare o adattare la larghezza di una colonna al testo si procede come nelle tabelle. |
Visualizzazione di un Dynaset Dopo aver progettato la query è possibile visualizzare il dynaset corrispondente utilizzando il pulsante Visualizza che mostra il foglio dati. Per tornare all'altra visualizzazione basta cliccare sull' icona Visualizza che mostra la struttura (è possibile apportare delle modifiche e tornare poi all'altra visualizzazione) |
Rinominare un campo in una query Per rinominare un campo si deve:
|
Impostazione del tipo di ordinamento Quando viene eseguita una query e visualizzato il dynaset corrispondente è più semplice l'interpretazione dei dati se gli stessi sono ordinati. La creazione di una query che ordini i dati risulta utile se si desidera visualizzare i dati ordinati in una maschera o in un report. Per specificare il tipo di ordinamento si deve:
E' possibile specificare un tipo di ordinamento per più campi. |
Impostazione di criteri |
L'impostazione di criteri permette di limitare il dynaset corrispondente a determinati record. I criteri vengono specificati utilizzando un'espressione che indica i record da includere e può essere di tipo semplice (ad esempio tutti i record corrispondenti alle filiali italiane si ritroveranno scrivendo "Italia") o più complessa (per trovare tutti i record corrispondenti ai rappresentanti di età compresa tra 20 e 30 anni scriveremo: Between 20 and 30). Un'espressione può essere digitata direttamente nella griglia QBE nella cella "Criteri" seguendo una precisa sintassi (per le filiali dell'esempio precedente si può scrivere: Italia, =Italia, "Italia", ="Italia") oppure si può ricorrere al generatore espressioni. In questo caso si deve:
|
Per eliminare una tabella da una query, si deve selezionare quella desiderata in visualizzazione struttura (cliccare sull'asterisco) e premere il tasto Canc. |
Utilizzo dei caratteri jolly Durante la progettazione di una query é possibile che si desideri selezionare dei campi contenenti una stringa di caratteri (ad esempio tutti i nomi che iniziano per B...). I caratteri jolly fondamentali sono: ?
che sta per un singolo carattere posto in quella posizione Ad esempio: Pa? la
Visualizza Paola, Paula... |
Selezione di record che non corrispondono ad un determinato valore Per far ciò si deve utilizzare l'operatore Not. Così se vogliamo ricercare tutti i nomi che non iniziano per S, scriveremo Not S*. |
Impostazione di più criteri In una query è possibile impostare diversi criteri per un campo utilizzando gli operatori And e Or (ad esempio per selezionare tutti i cognomi che iniziano per B e contengono la lettera S, scriveremo Like "B*" And Like "*s*". Utilizzando Or faremo si che un campo soddisfi un criterio oppure un altro (Like "Bal*" And Like "sal*" visualizzerà tutti i record che iniziano per Bal.. o per Sal..). |
Selezione di record contenenti dei valori E' possibile selezionare dei record a seconda che contengano o meno dei valori ( ad esempio solo le ditte che possiedono un numero di fax). Per far ciò si deve inserire nei criteri, sotto il campo scelto (nell'esempio fax) la scritta IS NOT NULL (o NOT NULL cioè che non sia nullo) |
Creazione di campi calcolati
E' possibile creare nel QBE dei campi calcolati che eseguano appunto dei calcoli. Se ad esempio abbiamo già il campo Prezzo unitario e quello Quantità, possiamo creare un nuovo campo per calcolare il Prezzo totale. La sintassi in questo caso sarà: Prezzo totale:[Prezzo unitario]*[Quantità] (i nomi dei campi devono essere racchiusi in parentesi quadra). Oppure per calcolare lo sconto di vari oggetti possiamo inserire la formula Totale: =[Prezzo] -[Prezzo]*[Sconto]/100 |
Calcolo di formule nelle query E' possibile porre delle domande relative a gruppi di dati e ciò si può fare con le query con formule. Per far ciò si deve:
Nella griglia QBE
verrà visualizzata la riga "Formula" con il valore prefissato
"Raggruppamento". |
Tipi di Query |
Query di comando Una query di comando apporta modifiche a molti record con una sola operazione. Esistono quattro tipi di query di comando: di Eliminazione, di Aggiornamento, di Accodamento e di Creazione tabella. |
Query di eliminazione Questo tipo di query elimina un gruppo di record da una o più tabelle. È possibile, ad esempio, utilizzare una query di eliminazione per rimuovere i prodotti di cui è stata interrotta la produzione o per i quali non esistono ordini. Con le query di eliminazione vengono eliminati sempre record interi, non solo determinati campi al loro interno. |
Query di aggiornamento Questo tipo di query apporta modifiche globali a un gruppo di record in una o più tabelle. È possibile, ad esempio, aumentare i prezzi del 10 per cento per tutti i prodotti caseari o aumentare gli stipendi del 5 per cento per le persone appartenenti a una determinata categoria lavorativa. |
Query di accodamento Questo tipo di query aggiunge un gruppo di record di una o più tabelle alla fine di una o più tabelle. Si supponga, ad esempio, che vengano acquisiti nuovi clienti e un database contenente una tabella di informazioni su di essi. Invece di digitare nuovamente tutte queste informazioni, si accodano alla propria tabella Clienti. |
Query di Creazione tabella Questo tipo di query crea una nuova tabella in base a tutti i dati o parte di essi contenuti in una o più tabelle. |
Query con parametri Una query con parametri è una query per la quale durante l'esecuzione viene visualizzata una finestra di dialogo che richiede delle informazioni, come l'immissione di criteri per recuperare dei record o un valore che si desidera inserire in un campo. |
Query trova duplicati Trova i record ripetuti in una tabella. |