首页 > 数据库 > MySQL > 正文

8Python全栈之途系列之MySQL触发器

2024-07-24 12:36:05
字体:
来源:转载
供稿:网友
  Python全栈之路系列之MySQL触发器
 
  对某个表进行增/删/改操作的前后如果希望触发某个特定的行为时,可以使用触发器,触发器用于定制用户对表的行进行增/删/改前后的行为。
 
  创建触发器基本语法
  插入前
 
  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
  
  delimiter %
  CREATE TRIGGER tri_before_insert_tb1 BEFORE INSERT ON user_info FOR EACH ROW
  BEGIN
  -- 如果插入时的Name="as"
  IF NEW.Name = "ansheng" THEN
      -- 那么就把这条数据先插入user_info_back表中,数据相同
      INSERT INTO user_info_back(Name,Password,Email) VALUES(NEW.Name,NEW.Password,NEW.Email);
  END IF;
  END%
  delimiter ;
  使用触发器
  触发器无法由用户直接调用,而知由于对表的增/删/改操作被动引发的。

(编辑:武林网)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表