Когда я выбираю из «обновленной» таблицы в триггере, я получаю сообщение об ошибке:
Msg 208, Level 16, State 1, Procedure foobar, Line 81
Invalid object name 'updated'.
Я устанавливаю триггер для обновления дочерних элементов, чтобы они соответствовали значению своих родителей при обновлении родительского элемента. Я пытаюсь ссылаться на «обновленную» таблицу, как указано в документации здесь .
Я проверил, что база данных правильная с оператором базы данных USE вверху.
CREATE TABLE foo ( bar int )
GO
CREATE TRIGGER foobar ON foo
AFTER INSERT, UPDATE
AS
SELECT bar FROM inserted ;
SELECT bar FROM updated ; --> problem!
SELECT bar FROM deleted ;
GO
INSERT INTO foo VALUES (3) ;
UPDATE foo SET bar = 2 WHERE bar = 3;
Я ожидаю увидеть 2 или три (т. Е. Изображение до или после изображения) из выбранных, но select * from updated
выдает ошибку: Invalid object name 'updated'.