@@IDENTITY
devuelve la identidad más reciente generada en la sesión actual. En la mayoría de los casos, probablemente querrá usar SCOPE_IDENTITY
en su lugar, que devuelve la identidad más reciente generada en el ámbito actual.
Por ejemplo, si inserta una fila en table1 , pero esa inserción activa un activador que inserta una fila en table2 , luego @@IDENTITY
devolverá la identidad de table2 mientras que SCOPE_IDENTITY
devolverá la identidad de 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