У меня есть две таблицы, а именно User и UserRole, где я хочу передать значения через хранимые процедуры с таблицами ниже.Мне нужна помощь, как я могу создать процедуру, которая вставляет в обе таблицы, предполагая, что у пользователя есть только одна роль, т.е. либо пользователь, либо администратор.
Параметр Id, вставленный во вторую таблицу, должен быть Id таблицы пользователя.Пожалуйста, предложите мне.
CREATE TABLE [dbo].[User](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) NULL,
[Username] [nvarchar](50) NULL,
[Password] [nvarchar](50) NULL,
)
CREATE TABLE [dbo].[UserRole](
[Id] [int] IDENTITY(1,1) NOT NULL,
[UserId] [int] Foreign Key References User(ID)NOT NULL,
[Role] [nvarchar](50) NULL
)
CREATE PROCEDURE [dbo].[AddUserRole]
@Name VARCHAR(50),
@Username DATETIME,
@Password INT,
@Role NVARCHAR(50),
@Id INT OUT
AS
BEGIN
SET NOCOUNT ON;
INSERT INTO [WH].[dbo].[User]
(
Name,
Username,
Password
)
VALUES
(
@ Name,
@Username,
@Password
);
SET @ Id = SCOPE_IDENTITY();
INSERT INTO [WH].[dbo].[UserRole]
(
UserId,
Role
)
VALUES
(
@Id,
@ Role
);
END;