我的前端有两个标签,用于收集地址和用户的信息。目前,我的存储过程在最终提交按钮上调用。我的地址表有一个ID(主键),Line1和Line2列。 My Users表有一个ID(主键)FirstName,LastName和AddressID列(应该映射到地址表中的ID列)。我的地址插入过程如下所示:
false
我的用户更新如下所示:
ALTER PROC [dbo].[Addresses_Insert]
@Line1 nvarchar(50),
@Line2 nvarchar (50), = null
@ID = INT output
As
BEGIN
INSERT INTO [dbo].[Addresses]
(
[Line1],
[Line2]
)
VALUES
(@Line1, @Line2)
SET @Id = SCOPE_IDENTITY()
END
我需要将scope_identity()从地址存储过程中获取到Users表的AddressID列,但我不确定如何使其工作。
答案 0 :(得分:0)
在代码中添加参数时,将@Id参数设置为输出参数,并在执行过程后检查参数值:
SqlParameter x = new SqlParameter();
x.Direction = System.Data.ParameterDirection.Output;
或者您可以像这样从@Id参数返回值:
SET @Id = SCOPE_IDENTITY();
Return @Id