Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get Identity of multiple insertion in sql server 2008 [duplicate]

Hi
Im going to insert 10 rows in a time using one TSQL which is available in SQL server 2008. I want the IDENTITY of inserted rows. I think the below solution would work but Im not sure if some other insertion happens while im running the previous insertion would affect the result

INSERT INTO tableA VALUES (1,2), (3,4), (4,5), ....
DECLARE @LastID INT = @@IDENTITY
SELECT TOP(10) ID FROM tableA WHERE ID<=@LastID ORDER BY ID DESC

like image 645
Ehsan Avatar asked Jan 10 '11 07:01

Ehsan


1 Answers

You can use the OUTPUT clause:

DECLARE @tablevar table (ID int);

INSERT INTO tableA 
OUTPUT INSERTED.ID INTO @tablevar 
VALUES (1,2), (3,4), (4,5), ....
like image 170
Mitch Wheat Avatar answered Sep 20 '22 06:09

Mitch Wheat