zoukankan      html  css  js  c++  java
  • mysql触发器

     1 /*
     2  * 添加数据之后报名人数加一
     3  */
     4 DELIMITER $$
     5 CREATE TRIGGER trigger_insert_enrolment_party_info
     6     AFTER INSERT ON `enrolment`
     7     FOR EACH ROW
     8     BEGIN
     9         UPDATE party_info SET signin_num=signin_num+1 WHERE id=new.party_id;
    10     END$$
    11     
    12 /**
    13  * 删除数据之后报名人数减一
    14  */
    15 DELIMITER $$
    16 CREATE TRIGGER trigger_delete_enrolment_party_info
    17     AFTER DELETE ON `enrolment`
    18     FOR EACH ROW
    19     BEGIN
    20         UPDATE `party_info` SET signin_num = signin_num-1 WHERE id = old.party_id AND signin_num > 0;
    21     END$$
    22     
    23 /**
    24  * 修改报名状态:1、由待审核变成未通过(报名数量减一),2、未通过变成待审核(报名数量加一)
    25  */
    26 DELIMITER $$
    27 CREATE TRIGGER trigger_update_enrolment_party_info
    28     AFTER UPDATE ON `enrolment`
    29     FOR EACH ROW
    30     BEGIN
    31         IF old.status = 'unaudited' AND new.status = 'notpass'
    32             THEN  SET @signin_num = signin_num-1;
    33         ELSEIF (old.status = 'notpass' AND new.status = 'unaudited') OR (old.status = 'quit' AND new.status = 'unaudited')
    34             THEN SET @signin_num = signin_num+1;
    35         END IF;
    36         UPDATE party_info SET signin_num = @signin_num WHERE id = new.party_id;
    37     END$$
  • 相关阅读:
    盘符格式转换成NTFS格式
    jdk环境变量配置
    修改mysql密码
    端口占用解决
    程序执行原理
    第一个Python程序
    pip安装第三方库失败的问题
    windows本地安装mongoDB并且安装可视化工具studio 3t
    开发时前端测试方法
    虚拟机配置vimrc
  • 原文地址:https://www.cnblogs.com/thierry/p/5082949.html
Copyright © 2011-2022 走看看