@@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