Ano – můžete použít málo známou a málo používanou klauzuli OUTPUT ve vašem příkazu INSERT
INSERT INTO dbo.YourTable(col1, col2, col3, ...., ColN)
OUTPUT Inserted.Col1, Inserted.Col5, Inserted.ColN
VALUES(val1, val2, val3, ....., valN)
To vrátí normální sadu dat, se kterou můžete nakládat, jak potřebujete.
Jak ukazují dokumenty MSDN, můžete také odeslat hodnoty OUTPUT do např. proměnnou tabulky nebo dočasnou tabulku pro pozdější použití, pokud budete potřebovat.
Chcete-li odpovědět na vaši aktualizovanou otázku, použijte toto:
INSERT INTO dbo.EMPDETAILS(EmpName)
OUTPUT Inserted.EmpID
VALUES("John")