Iniziando a lavorare con i database e le relative interrogazioni in ASP, ho sentito spesso la necessità di ricavare e quindi stampare a video l'ultimo record inserito. Per far questo, inserisco un campo di nome ID nel database, configurato come contatore.
Per ottenere l'ultimo valore, iniziamo la comune interrogazione con la sintassi:
<% dim strConn strConn="Provider = Microsoft.Jet.OLEDB.4.0; Data Source ="&_ Server.MapPath("database.mdb")&"; Persist Security Info = False" Set conn=Server.CreateObject("ADODB.Connection") conn.Open strConn %>
Nel caso che stiamo esemplificando, il database ha il nome "database.mdb".
Fatto questo, richiamiamo il campo ID dalla tabella "nometabella".
<% set rs = Server.CreateObject("ADODB.Recordset") rs.open "SELECT ID FROM nometabella ORDER BY ID DESC", conn, 1, 3 %>
In questa porzione di codice, abbiamo ordinato i valori presi dal campo ID, in maniera decrescente, quindi dal più grande al più piccolo.
Adesso non ci resta che prendere solo un valore tra gli ID presenti, che sarà quindi il maggiore:
<% for i=1 to 1 if rs.eof<>true and rs.bof<>true then %>
E' possibile ovviamente prendere anche gli ultimi due record inseriti, modificando la riga:
<% for i=1 to 1 %>
con
<% for i=1 to 2 %>
Detto questo, stampiamo a video, nel modo in cui preferiamo, il dato ottenuto:
<% Response.write "<FONT FACE=ARIAL>L'ultimo ID inseritè o il <B>" & rs("ID") & _ "°</B></FONT>" %>
Naturalmente, prima di salvare il file, è necessario chiudere la connessione al database:
<% rs.movenext end if next rs.close set rs=Nothing conn.Close set conn=Nothing %>
Per approfondimenti sui database si veda
https://www.aspitalia.com/articoli/db/
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.