【发布时间】:2016-03-12 21:32:21
【问题描述】:
我们如何在 SQL Server 的同一个存储过程中的两个表中插入记录。我只需要从第一个表中插入 ID 字段即可将其作为对第二个表的引用插入。在多用户环境中,我们将有并发插入。
【问题讨论】:
-
看看
scope_identity()函数。 -
您也可以使用输出子句,它也可以与批量插入一起使用
标签: sql-server
我们如何在 SQL Server 的同一个存储过程中的两个表中插入记录。我只需要从第一个表中插入 ID 字段即可将其作为对第二个表的引用插入。在多用户环境中,我们将有并发插入。
【问题讨论】:
scope_identity()函数。
标签: sql-server
BEGIN TRAN
DECLARE @id INT
INSERT INTO tbl1
VALUES (..)
SET @id = SCOPE_IDENTITY()
INSERT INTO tbl2
VALUES (@id)
COMMIT TRAN
【讨论】:
begin tran
Declare @tbl table (id int)
insert into t11
output inserted.* into @tbl
select 1
insert into t2
select * from @tbl
commit
【讨论】: