我打算在多个表中插入数据,对于每个条目,我需要为每个插入捕获SCOPE_IDENTITY()。在我的商店程序中,它存储第一次插入的记录并返回SCOPE_IDENTITY()但是后面的插入不会记录值,除非我删除了SCOPE_IDENTITY()...我在这里做错了什么????
我正在使用SQL Server 2012
USE [MySolution01_DB]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[CreateNewFunctionsNavigation]
@FunctionName nvarchar(250),
@Hierarchy_Level INT,
@Function_identity INT OUTPUT,
@ControllerName nvarchar(250),
@Controller_identity INT OUTPUT
AS
BEGIN
SET NOCOUNT ON;
INSERT INTO [dbo].[Navigation_Functions] ([FunctionName],[Hierarchy_Level] )
VALUES(@FunctionName, @Hierarchy_Level)
SET @Function_identity=SCOPE_IDENTITY()
RETURN @Function_identity
INSERT INTO [dbo].[Navigation_FunctionController] ([ControllerName])
VALUES(@ControllerName)
SET @Controller_identity = SCOPE_IDENTITY()
RETURN @Controller_identity
RETURN
END