@@IDENTITY vrátí nejnovější identitu vygenerovanou v aktuální relaci. Ve většině případů budete pravděpodobně chtít použít SCOPE_IDENTITY místo toho vrátí nejnovější identitu vygenerovanou v aktuálním oboru.
Pokud například vložíte řádek do tabulky1 , ale toto vložení spustí spouštěč, který vloží řádek do table2 a poté @@IDENTITY vrátí identitu z tabulky2 zatímco SCOPE_IDENTITY vrátí identitu z tabulky1 .
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