MySQL学习之触发器

触发器

如果你想在对表进行增(insert)、删(delete)、改(update)操作的前(before)后(after)

触发某种特定的行为的时候,就可以使用触发器 (没有查select)

创建

# 创建:
#       插入前
        CREATE TRIGGER tri_before_insert_tb1 BEFORE INSERT ON tb1 FOR EACH ROW
        BEGIN
            ...
        END

        # 插入后
        CREATE TRIGGER tri_after_insert_tb1 AFTER INSERT ON tb1 FOR EACH ROW
        BEGIN
            ...
        END

        # 删除前
        CREATE TRIGGER tri_before_delete_tb1 BEFORE DELETE ON tb1 FOR EACH ROW
        BEGIN
            ...
        END

        # 删除后
        CREATE TRIGGER tri_after_delete_tb1 AFTER DELETE ON tb1 FOR EACH ROW
        BEGIN
            ...
        END

        # 更新前
        CREATE TRIGGER tri_before_update_tb1 BEFORE UPDATE ON tb1 FOR EACH ROW
        BEGIN
            ...
        END

        # 更新后
        CREATE TRIGGER tri_after_update_tb1 AFTER UPDATE ON tb1 FOR EACH ROW
        BEGIN
            ...
        END


        delimiter //
        CREATE TRIGGER tri_after_insert_cmd AFTER INSERT ON cmd FOR EACH ROW
        BEGIN
            IF NEW.success = 'no' THEN #等值判断只有一个等号
                INSERT INTO errlog(err_cmd, err_time) VALUES(NEW.cmd, NEW.sub_time) ; #必须加分号
            END IF ; #必须加分号
        END//

        delimiter ;

        # insert 只有NEW
        # delete 只有OLD
        # update 有NEW、OLD

删除

drop trigger tri_before_insert_cmd;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值