Пользовательская таблица и переменная
У меня есть хранимая процедура, которая вставляет несколько строк в таблицу через Tyble, определенный пользователем. Пользовательский тип заполняется из aC# datatable.
В хранимой процедуре перед выполнением команды вставки с таблицей данных у меня есть другая команда вставки в другую таблицу. Scope_Identity() для получения идентификатора вновь вставленной строки и присвоения его переменной.
Что я хотел бы сделать, это добавить этот идентификатор для всех строк, которые добавляются с пользовательским типом.
Какой лучший способ сделать это? Как я могу включить значение Scope_Identity в оператор вставки?
1 ответ
Если я не ошибаюсь, вы можете установить SCOPE_IDENTITY
целочисленной переменной и использовать ее в своем INSERT
DECLARE @lastId INT
-- Your first INSERT
INSERT INTO yourTable1 ....
SET @lastId = SCOPE_IDENTITY()
-- Your second INSERT
INSERT INTO yourTable2(...)
VALUES(@lastId, [user data types], ...)