Пользовательская таблица и переменная

У меня есть хранимая процедура, которая вставляет несколько строк в таблицу через 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], ...)
Другие вопросы по тегам