“事务在触发器中结束。批已中止”错误

时间:2018-12-07 21:43:20

标签: mysql triggers

我在触发器中遇到此错误,这是为了防止库存量少于订购数量的产品的订单更新。这是我的触发器:

alter trigger tr_check_qty
on OrderDetails
for update
as
if (select Quantity from inserted i) > (select UnitsInStock from Products p
inner join inserted i on p.ProductID = i.ProductID)
begin
print 'Ordered amount cannot be greater than units in stock'
rollback transaction
end 

这是我执行触发器的方式:

UPDATE OrderDetails 
SET Quantity = 40 
WHERE OrderID = 10044 AND ProductID = 77

0 个答案:

没有答案