Query SQL in Access

Con questa lezione inizia un corso sul linguaggio SQL ( Structured Query Language ) in Access, inizieremo con il comando SELECT.

La query di selezione

Per poter creare dei programmi in Access ben fatti occorre conoscere molto bene il linguaggio per le interrogazioni sui database (query) SQL (Structured Query Language). Questo linguaggio fu introdotto dalla IBM per poter interrogare i suoi database relazionali e da allora è stato sempre utilizzato per questo scopo anche da Microsoft ed altri, in pratica è divenuto uno standard per i database relazionali.

Ogni volta però che veniva adeguato per i propri scopi, alcune software house hanno creato dei dialetti di questo vero e proprio linguaggio di programmazione, così Microsoft ha creato il proprio dialetto, quello che oggi troviamo nello strumento per database di Office.

Database relazionali

Un database relazionale di Access è un file al cui interno abbiamo le tabelle, la parte principale di un archivio, all’interno delle tabelle abbiamo i campi, che formano la struttura della tabella, mentre i dati si chiamano record. Ogni campo può essere identificato con un nome ed un tipo di dati che contiene, testo, numeri, valute, date, etc..

Esempi di query

Per selezionare i dati all’interno di una tabella dobbiamo creare una query di selezione:

SELECT nome_campo_1, nome_campo_2, .... * FROM nome_tabella

Il comando SELECT fa in modo di selezionare determinati campi o tutti ( * ) da una tabella.

Prendiamo per esempio la tabella “Comuni” contenente i campi “IDComune, Comune, CAP, Provincia” (il primo di questi sarà di tipo numerico intero lungo con indice primario e autoincrementante, che serve per i join che vedremo nelle prossime lezioni).

Per selezionare solo il nome del comune e che inizia per “C” dobbiamo scrivere:

SELECT Comune FROM Comuni WHERE Comune LIKE 'C*' ORDER BY Comune

Con questo comando abbiamo isolato solo i comuni che iniziano per “C” ed in ordine alfabetico ascendente. Vediamo che abbiamo scritto i comandi SQL in maiuscolo, questo per differenziarli dai nomi dei campi e delle tabelle. Al posto di “LIKE” potevamo anche scrivere “=”, ma in questo caso non potevamo utilizzare l’asterisco e quindi potevamo solo cercare un comune per volta; inoltre se l’argomento del “LIKE” o “=” è un testo si deve racchiudere questo tra apici per differenziarli dai numeri.

Microsoft Access

In Access tutto può essere fatto graficamente, ma se si desidera anche scrivendo il codice a mano selezionando il tipo di visualizzazione SQL. In visualizzazione struttura una query è molto più semplice da capire. Per creare una nuova interrogazione basta andare nella linguetta delle query e cliccare su nuovo, selezionare da struttura e scegliere la tabella su cui eseguire l’interrogazione, nel nostro caso la tabella “Comuni”, poi da campo selezionare “Comune”, facciamo in modo che sia visualizzato avendo il check spuntato, selezioniamo ordinamento crescente o decrescente e poi in criteri inseriamo ‘LIKE “C*”‘.

Quello che abbiamo scritto prima ora lo abbiamo compiuto graficamente, molto più comodo, ma non abituatevi, almeno all’inizio, a creare query in questo modo, per imparare a programmare in SQL infatti avrete bisogno di esperienza, che si ottiene solo facendo il lavoro manualmente. Se provate a visualizzare la query in SQL vedrete il codice creato.

Se desiderate avere degli esempi di database utili per vedere le query a livello di codice VBA, potete scaricare ad esempio MerciGest per Access che ha molte query di ricerca nel codice sorgente; lo potete trovare tra i software gratuiti sul nostro blog e se desiderate porre delle domande potete farlo qui nei commenti.

IndiceLezione Successiva >>

Creative Commons License
Except where otherwise noted, the content on this site is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

Modifica preferenze cookie