Klauzula wyjściowa T-SQL: Jak uzyskać dostęp do starego identyfikatora tożsamości
Mam instrukcję T-SQL, która w zasadzie wykonuje wstawkę i WYJŚCIA niektóre wstawione wartości do zmiennej tabeli w celu późniejszego przetworzenia.
Czy istnieje sposób na zapisanie starego identyfikatora tożsamości wybranych rekordów w mojej zmiennej tabeli. Jeśli użyję poniższego kodu, otrzymam „Identyfikator wieloczęściowy„ a.ID ”nie może być powiązany.” błąd.
DECLARE @act_map_matrix table(new_act_id INT, old_ID int)
DECLARE @new_script_id int
SET @new_script_id = 1
INSERT INTO Act
(ScriptID, Number, SubNumber, SortOrder, Title, IsDeleted)
OUTPUT inserted.ID, a.ID INTO @act_map_matrix
SELECT
@new_scriptID, a.Number, a.SubNumber, a.SortOrder, a.Title, a.IsDeleted
FROM Act a WHERE a.ScriptID = 2
Dzięki!