语法:
//修改sql语句结束符,避免 sql1 sql2 的; 影响整体sql的结束
delimiter $
cretae trigger 触发器名称
after/before insert/update/del on 表名
for each row //固定写死的
begin
sql1;
sql2;
end$
例子1、增加订单,减少库存
create trigger tg1
after insert on order_info
for each row
begin
update goods set goods_number = goods_number - now.buy_number where goods_id = now.goods_id;
end$
例子2、删除一个订单,增加库存
create trigger tg1
after delete on order_info
for each row
begin
update goods set goods_number = goods_number + old.buy_number where goods_id = old.goods_id;
end$
例子3、修改订单数量,修改库存
create trigger tg1
after update on order_info
for each row
begin
update goods set goods_number = goods_number + old.buy_number - new.buy_number where goods_id = old.goods_id;
end$