我有一个SQL查询,它在表中插入了很多新行并更新了很多旧行 有没有办法确定插入的所有行?
答案 0 :(得分:2)
在之前的Stackoverflow文章中找到了这个: How to insert multiple records and get the identity value?
以下是安迪·欧文:
使用2005年的ouput条款:
DECLARE @output TABLE (id int)
Insert into A (fname, lname)
OUTPUT inserted.ID INTO @output
SELECT fname, lname FROM B
select * from @output
现在你的表变量具有你插入的所有行的标识值。
答案 1 :(得分:0)
答案 2 :(得分:0)
@@ IDENTITY已弃用,建议您使用SCOPE_IDENTITY()
您还可以通过插入的表格确定插入的项目