Le stored queries di Access

3 pagine in totale: <<Indietro 1 [2] 3 Avanti >>

Utilizzo delle SP nelle nostre pagine ASP e ASP.NET

Per richiamare una nostra SP non dobbiamo cambiare pressoché nulla nel nostro codice, tranne il comando SQL che dovremo sostituirlo con il nome della SP con eventuali parametri separati dalla virgola. Ecco un esempio in ASP che richiama la SP creata dal codice precedente:

set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("db.mdb")
set rs=conn.execute("nomeSP")
while not rs.eof
Response.Write (rs("nome") & "<br>")
Rs.MoveNext
wend
set rs=Nothing
conn.close
%>

Se ci fossero dei parametri, modificheremo, come già detto, la riga:

set rs=conn.execute("nomeSP parametro1,parametro2")
ricordandoci che in caso di stringhe con all'interno l'apice di raddoppiarle:
set rs=conn.execute("nomeSP 'L''aereo'")
Anche in ASP.NET non cambia nulla ma abbiamo un'altra opportunità. Per richiamare una SP possiamo utilizzare anche il metodo "esplicito":
OleDbConnection conn= new OleDbConnection("provider...");
OleDbCommand command= new OleDbCommand("nomeSP",conn);
command.CommandType=CommandType.StoredProcedure;
OleDbParam parametri;
parametri=command.Parameters.Add("@nome",OleDbType.VarChar,100);
parametri.Direction=ParameterDirection.Input;
parametri.Value="Andrea";
parametri=command.Parameters.Add("@eta",OleDbType.Integer);
parametri.Direction=ParameterDirection.Input;
parametri.Value="28";
conn.Open();
command.ExecuteNonQuery();
conn.Close();

L'esempio "rubrica"

Si tratta di una semplice pagina ASP.NET che visualizza un elenco di nominativi con il relativo numero di telefono con possibilità di modificare, aggiungere e cancellare i vari dati:

Immagine

Se si esamina il codice di questa pagina, si noterà che tutte le query al database sono eseguite con le stored queries create in precedenza. Per l'inserimento:

strsql="exec inserisci '"+cognome.Replace("'","''")+
   "', '"+nome.Replace("'","''")+
   "', "+eta+
   ", '"+telefono.Replace("'","''")+
   "', #"+DateTime.Now.ToString("MM/dd/yyyy")+"#";

Per la modifica:

strsql="exec aggiorna "+
   "'"+cognome.Replace("'","''")+
   "', '"+nome.Replace("'","''")+
   "', "+eta+
   ", '"+telefono.Replace("'","''")+
   "', #"+DateTime.Now.ToString("MM/dd/yyyy")+"#,"+
   quale;

e così via...
In questo esempio ho utilizzato "implicito" delle SQ per semplicità e per mantenere il codice più leggile e di più semplice comprensione; ma per ottenere il massimo di prestazioni nelle pagine ASP.NET è consigliabile l'uso "esplicito" prima esposto.

3 pagine in totale: <<Indietro 1 [2] 3 Avanti >>

Attenzione: Questo articolo contiene un allegato

Contenuti dell'articolo

Commenti
Dai un voto a questo articolo, ci aiuterà a migliorare il nostro sito (1 è il voto minimo, 5 il massimo).

Per procedere al rating dell'articolo devi essere autenticato.

TUTORIALS
TOP TEN ARTICOLI
NOTIFICHE

Iscriviti alla nostra newsletter nuoviarticoli per ricevere e-mail le notifiche!

Indirizzo e-mail:
PROVIDER ASP.NET 2.0

Seleziona il database per avere il web.config pronto per Membership, Roles e Profile API.



IN EVIDENZA
MISC