📄 changedetail_update.sql
字号:
CREATE TRIGGER ChangeDetail_Update
ON ChangeDetail
FOR UPDATE
AS
/* 如果修改记录数是0就结束触发程序 */
IF @@ROWCOUNT = 0 RETURN
/* 定义变量
@NewProductID : 新的商品编号
@OldProductID : 旧的商品编号
@NewQuantity : 新的数量
@OldQuantity : 旧的数量
*/
DECLARE @NewProductID Char(10), @OldProductID Char(10)
DECLARE @NewQuantity Decimal(12, 0), @OldQuantity Decimal(12, 0)
/* 找出修改后的商品编号给NewProductID, 修改后的数量给 NewQuantity */
SELECT @NewProductID = ProductID, @NewQuantity = ChangeQuantity
FROM inserted
/* 找出修改前的商品编号给NewProductID, 修改前的数量给 NewQuantity */
SELECT @OldProductID = ProductID, @OldQuantity = ChangeQuantity
FROM deleted
/*计算库存量*/
/*新商品库存量加回*/
UPDATE Product SET Quantity = Quantity + @NewQuantity
WHERE ProductID = @NewProductID
/*旧商品库存量减掉*/
UPDATE Product SET Quantity = Quantity - @OldQuantity
WHERE ProductID = @OldProductID
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -