Я пишу триггер на сервере sql при обновлении инвентаря какого-либо предмета. Я хочу обновить инвентарь в соответствии с приобретенным статусом заказа. Связанный код выглядит так:
declare @status varchar(50)
select @iID = i.itemID, @oID = i.orderID FROM inserted i;
select @status = orderPurchase.orderStatus FROM orderPurchase WHERE orderPurchase.orderID = @oID
BEGIN
IF @status = 'C'
update item SET inventory = @result1 WHERE itemID = @iID;
ELSE
update item SET inventory = @result2 WHERE itemID = @iID;
END
Тем не менее, результат показывает, что он всегда увеличивает запас, независимо от того, является ли статус заказа «C» или «R», что означает возвращение.
Можете ли вы помочь с этой проблемой? Спасибо заранее.