23 messaggi dal 15 gennaio 2003
Ciao a tutti,
ho necessità di recuperare l'ultimo id inserito in una tabella.
Ma non l'ulimo in ordine di tempo, l'ultimo che ho inserito io perchè potrebbero esserci più utenti!

devo fare un'insert in una tabella, recuperare l'id (autoincrementato) di questa fare la insert dell'id in questione in un'altra tabella.

ho provato a fare così:
 
Dim ConnLastID As SqlConnection 
Dim CommLastID As SqlCommand 
Dim DRLastID As SqlDataReader 

Dim strSQLID as String = "SELECT @@IDENTITY as UltimoID FROM EC_TESTEWEB" 

ConnLastID = New SqlConnection(ConfigurationSettings.AppSettings("DBStrConn")) 
CommLastID = New SqlCommand(strSQLID, ConnLastID) 
CommLastID.CommandType = CommandType.Text 

If ConnLastID.State <> ConnectionState.Open Then 
ConnLastID.Open() 
End If 

DRLastID = CommLastID.ExecuteReader 
DRLastID.Read() 

Dim UltID as String = DRLastID("UltimoID") 
me.lbl_conferma.Text = UltID 

DRLastID.Close() 
ConnLastID.Close() 

ma non funziona ( DRLastID("UltimoID") risualta nullo ) e non ho capito nemmeno se è possibile fare una cosa del genere o se ho fatto solo un gran casino......

un grazie a chi sarà così gentile da aiutarmi!
Se usi stored procedure (anzi, è meglio) puoi usare @@IDENTITY che ti dà l'ultimo id inserito per la tua sessione (o la funzione SCOPE_IDENTITY, nel richiami sp al suo interno)

Ciao

Il mio blog
Homepage

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.