插入行并获取其id并将该id插入另一个表的存储过程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了插入行并获取其id并将该id插入另一个表的存储过程相关的知识,希望对你有一定的参考价值。
我有一个表user
列
Id | Name | Email
我有另一张桌子employee
与列
Id | UserId | Designation
有没有办法写一个存储过程,我在User
中插入一行并获取Id
,然后使用Id
(作为UserId
)在Employee
表中插入一行?
答案
当然 - 没问题 - 尝试这样的代码:
CREATE PROCEDURE dbo.InsertUserAndEmployee
(@Name VARCHAR(100),
@Email VARCHAR(255),
@Designation VARCHAR(100)
)
AS
BEGIN
-- Insert into "User"
INSERT INTO dbo.User (Name, Email)
VALUES (@Name, @Email);
-- get the newly inserted ID
DECLARE @UserId INT;
SELECT @UserId = SCOPE_IDENTITY();
-- Insert into "Employee"
INSERT INTO dbo.Employee (UserId, Designation)
VALUES (@UserId, @Designation);
END
以上是关于插入行并获取其id并将该id插入另一个表的存储过程的主要内容,如果未能解决你的问题,请参考以下文章
如何执行存储在 MySQL 中的将 ID 从一个表插入到另一个表的过程?