好吧,我有两张桌子:
CREATE TABLE Temp(
TEMP_ID int IDENTITY(1,1) NOT NULL, ... )
CREATE TABLE TEMP1(
TEMP1_ID int IDENTITY(1,1) NOT NULL,
TEMP_ID int, ... )
它们与TEMP_ID外键相关联。 在存储过程中,我需要创建吨 Temp和Temp1行并更新它们,所以我创建了一个表变量(@TEMP),我正在处理它,最后在Temp中创建一个大的INSERT。我的问题是:如何在没有安全插入多个会话的情况下用正确的TEMP_ID填充@Temp?
答案 0 :(得分:0)
您可以使用Scope_Identity()查找最后插入的行。您可以使用Output子句查找所有新插入(或更新)的行。
create table #t1
(
id int primary key identity,
val int
)
Insert into #t1 (val)
output inserted.id, inserted.val
values (10), (20), (30)