@@IDENTITY
retorna a identidade mais recente gerada na sessão atual. Na maioria dos casos, você provavelmente desejará usar SCOPE_IDENTITY
em vez disso, que retorna a identidade mais recente gerada no escopo atual. Por exemplo, se você inserir uma linha em table1 , mas essa inserção dispara um gatilho que insere uma linha em table2 , então
@@IDENTITY
retornará a identidade de table2 enquanto SCOPE_IDENTITY
retornará a identidade 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