Проблема со сравнением Varchar в sqlserver. Использование = не работает - PullRequest
0 голосов
/ 09 апреля 2019

Я пишу триггер на сервере 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», что означает возвращение.

Можете ли вы помочь с этой проблемой? Спасибо заранее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...