У меня есть две таблицы:
- Заказ и
- Продукт.
Я хочу, чтобы определенный столбец (OnShelfQuantity) в таблице Product обновлялся по мере добавления новой строки в таблицу Order. Я использовал приведенный ниже запрос для реализации триггера, который это сделает. Но проблема в том, что когда я вставляю строку в таблицу «Заказ», а затем проверяю таблицу «Продукт», чтобы увидеть изменения, я замечаю, что таблица «Продукт» обновлялась 3 раза. Например: Вставленное количество заказа = 10, тогда только 10 следует вычесть из Product_TAB.OnShelfQuantity. Но 30 вычитается. Пожалуйста помоги!
create trigger dbo.Trigge
ON dbo.Ordertable
AFTER INSERT
AS
BEGIN
update Product_TAB set OnShelfQuantity= Product_TAB.OnShelfQuantity - Ordertable.Quantity
FROM dbo.Product_TAB
INNER JOIN Ordertable
ON Ordertable.ProductID = Product_TAB.ProductID;
END;
inserted
иdeleted
виртуальные таблицы, используемые в триггерах. - person AlwaysLearning   schedule 11.01.2021