Le stored queries di Access

di Andrea Zani, in Database,
  • 0
  • 0
  • 0
  • 14,95 KB

Il nostro caro Access in questi ultimi anni è notevolmente cresciuto. Il passo che si è avuto dalla versione '97 alla 2000 è stato notevole e anche se ha portato incompatibilità tra le due versioni (nella versione 2000 possiamo utilizzare database in formato '97 ma non possiamo modificarne la struttura previa la conversione al nuovo formato), ha introdotto modifiche come il raddoppio della dimensione del file creato (un file mdb può essere ora di 2GB contro 1GB della versione '97) e il supporto per le stored procedures come database di altissimo livello come SQL Server e Oracle, anche se in questo database vengono chiamate Stored Queries e non hanno ovviamente la potenza dei due database prima citati.

Non è tutto oro quello che luccica

Purtroppo il supporto per le SP non è proprio di altissimo livello. In poche parole scordiamoci le tabelle temporanee (sigh!), gli output parameters (doppio sigh!) e altri divertimenti simili. Possiamo creare le nostre SP per inserimenti, query di ricerche, cancellazioni e modifiche che, a guardare alcuni test, hanno un aumento di prestazioni notevole confrontandole con le normali query. Per maggiori informazioni a riguardo vi consiglio questo articolo

Creare le stored queries in Access

In Access possiamo creare le nostre SQ in modo abbastanza semplice. Apriamo un database con Access 2000 o con Access XP (come ho già detto la versione '97 non supporta le SQ). Nell'esempio di seguito ho creato un semplice database contenente una rubrica di nomi e numeri di telefono nella tabella "elenco".

Immagine

Per creare le nostre SQ clicchiamo su Query. Qui su "Crea una query in visualizzazione struttura". Nella finestra che appare scegliamo la nostra tabella appena creata:

Immagine

Ora nella parte superiore sarà visualizzata una nuova finestra contente il nome dei campi di questa tabella. Dal menu "Visualizza" chicchiamo su "Visualizzazione SQL":

Immagine

Verrà aperta una finestra dove inserire il comando SQL per le nostre stored queries:

Immagine

Digitato il codice per il nostro esempio, usciamo da questa finestra. Verrà chiesto il nome con cui memorizzare questa SQ; nel nostro caso scriviamo "leggi". Ora possiamo inserire le altre tre query, queste dovranno accettare dei parametri.

Con il nome "inserisci":

INSERT INTO elenco ( cognome, nome, eta, telefono, data )

VALUES ([@cognome], [@nome], [@eta], [@telefono], [@data]);

"aggiorna":

UPDATE elenco SET cognome = [@cognome], nome = [@nome], eta = [@eta], telefono = [@telefono], data = [@data] WHERE id=[@id];

"cancella":

DELETE * FROM elenco WHERE id=[@xid];

Alla fine, nella finestra delle query avremo:

Immagine
(Notare le icone al fianco dei nomi che contraddistinguono la funzione di ogni SQ).

Possiamo inserire il codice delle nostre SQ anche direttamente via codice anche se in modo abbastanza scomodo. Per curiosità vediamo brevemente come:

CREATE PROC nomeSP AS select * from tabella;
oppure:
CREATE PROC nomeSP AS insert into tabella(nome,eta) Values ('Andrea',28);
o con i parametri:
CREATE PROC nomeSP(xid LONG,xnome Text(40)) AS update nome=xnome where id=xid;
per cancellare una SQ:
DROP PROC nomeSP
In ASP, in un database naturalmente in formato 2000 o XP con all'interno una tabella con questo nome, scriveremo per creare una SQ:
<%

set Conn = Server.CreateObject("ADODB.Connection")

Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("database.mdb")

inser=" CREATE PROC nomeSP AS select * from tabella;"

conn.execute (inser)

Conn.close

Set Conn=Nothing

%>

3 pagine in totale: 1 2 3

Attenzione: Questo articolo contiene un allegato.

Contenuti dell'articolo

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti