在输出中使用SCOPE_IDENTITY()时的一致性

时间:2016-01-23 08:36:03

标签: sql sql-server insert scope-identity

我想执行一个SQL查询,该查询将返回添加到表中的行的当前标识ID:

DECLARE @id int
DECLARE @tblOutput table (id int)

INSERT INTO tblStudent(Name, Family, age, test)
OUTPUT inserted.id into @tblOutput
VALUES('ashghar', 'farhadi', 321, 135)

SELECT @id = id from @tblOutput

现在我的问题是我当前插入行的返回id还是最后插入行的id?

我的意思是我可以相信它作为外键使用吗?

1 个答案:

答案 0 :(得分:3)

output insertedSCOPE_IDENTITY都会为您提供上一个语句插入的行中的ID。所以是的,你可以将它用作外键。