Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Restituisce l'identità dell'ultima riga inserita dalla stored procedure

Direi che dovresti usare SCOPE_IDENTITY() come @@identity restituirà l'identità dell'ultima cosa inserita (che potrebbe non essere la tua procedura memorizzata se più query sono in esecuzione contemporaneamente).

Devi anche SELEZIONARLO, non RESTITUIRLO.

ExecuteScalar restituirà il valore della prima colonna dalla prima riga di un set di risultati.

Allora...

SELECT SCOPE_IDENTITY();

è probabilmente più quello che vuoi.