venerdì 27 novembre 2009

Particolarità riscontrate lavorando con l'SQL in Access: differenze rispetto agli altri DBMS

L'SQL "standard" può presentare delle variazioni più o meno marcate a seconda del DBMS preso in considerazione.Access, a tal proposito, è fondamentalmente un DBMS sui generis.
A differenza di altri ambienti di sviluppo, in Access un unico file comprende tutti gli strumenti per lo sviluppo delle applicazioni: tabelle, query, maschere, report. Le tabelle sono i contenitori dove vengono memorizzati i dati; le query sono gli strumenti idonei all'interrogazione ed alla manipolazione dei dati che avvengono attraverso un mini-SQL; le maschere consentono di interagire con i dati delle tabelle o delle query attraverso un'interfaccia grafica; i report, infine, consentono principalmente di visualizzare dei risultati basati sui dati.
Negli anni '90 Microsoft inserisce Access nel pacchetto dei prodotti Office e Access, oltre ad essere un programma in grado di gestire le informazioni "depositate" in un database relazionale, si rivela potente e flessibile ma soprattutto user friendly, tanto che può essere utilizzato sia per progetti "semplici" (si pensi ad una rubrica telefonica) che "complessi" (una ricerca scientifica). Access rientra in quella categoria di RDBMS che possono relazionarsi con il linguaggio SQL.
Per poter usare SQL in Access è necessario definire una query e scegliere l’opzione "Visualizza SQL", cosi facendo è possibile aprire una finestra di testo (la c.d. "Finestra SQL") in cui riportare le istruzioni SQL.
Gli elementi che caratterizzano il linguaggio SQL di Access sono:

- Non accetta il costrutto CHECK (è un vincolo).

-Cambia la valutazione dell’operatore COUNT: se l’argomento è un attributo, non vengono restituiti i singoli valori dell’attributo, ma il numero dei valori non nulli.
-La clausola DISTINCT non può essere utilizzata.

- L'operatore JOIN deve essere sempre identificato con il termine INNER od OUTER, mentre con Oracle utilizzeremmo, per esempio, l'operatore WHERE.
- Il carattere JOLLY (corrisponde a qualsiasi stringa composta da zero o più caratteri) viene indicato con il segno asterisco (*) e non con il simbolo della percentuale (%).

-Riconosce sia il singolo apice (') che i doppi apici (") nell’identificazione delle stringhe alfanumeriche.
- Per le stringhe che contengono date Access permette di adottare la formula latina GG/MM/AAAA mentre per alcuni DBMS di origine anglosassone ciò non è possibile. Nei comandi le date vanno racchiuse attraverso l'apice singolo ('), per la maggior parte dei dialetti SQL, mentre in Access si usa il cancelletto (#).

- La clausola TOP può essere utilizzata per selezionare un certo numero di tuple dal risultato.

- Le parentesi quadre racchiudono gli identificativi di tabelle

Nessun commento:

Posta un commento