@@IDENTITY
restituisce l'identità più recente generata nella sessione corrente. Nella maggior parte dei casi probabilmente vorrai usare SCOPE_IDENTITY
invece, che restituisce l'identità più recente generata nell'ambito corrente.
Ad esempio, se inserisci una riga in table1 , ma quell'inserimento attiva un trigger che inserisce una riga in table2 , quindi @@IDENTITY
restituirà l'identità da table2 mentre SCOPE_IDENTITY
restituirà l'identità da table1 .
INSERT INTO my_table (my_column) VALUES ('test')
-- return the identity of the row you just inserted into my_table
-- regardless of any other inserts made by triggers etc
SELECT SCOPE_IDENTITY() AS ins_id