t-sql get inserted row id code example

Example: how to get inserted id in sql

/*  inserted id in SQL Server */
-- SCOPE_IDENTITY() last identity generated for ANY TABLE in the CURRENT SESSION and the CURRENT SCOPE
    INSERT INTO TableA (...) VALUES (...)
    SET @LASTID = SCOPE_IDENTITY()
-- @@IDENTITY last identity generated for ANY TABLE in the CURRENT SESSION
    INSERT INTO TableA (...) VALUES (...)
    SET @LASTID = @@IDENTITY
-- IDENT_CURRENT('TableA') last identity for a SPECIFIC TABLE in ANY SESSION and ANY SCOPE
    SET @LASTID = IDENT_CURRENT('TableA')
-- OUTPUT clause of the INSERT statement EVERY ROW inserted via that STATEMENT
    DECLARE @NewIds TABLE(ID INT, ...)
    INSERT INTO TableA (...)
    OUTPUT Inserted.ID, ... INTO @NewIds
    SELECT ...

Tags:

Sql Example