MySQL "create trigger tr_emp before insert or update"

标签 mysql triggers

delimiter //
create trigger tr_emp2 before insert or update
on employee for each row
begin
  if new.ID<>10100 then
      if new.Mgr not in (select ID from employee)
      then
      SIGNAL SQLSTATE '45000'
        SET MESSAGE_TEXT = 'Invalid Mgr_id!';
      end if;
  end if;
end;//
delimiter ;

如何表达“在插入或更新之前创建触发器tr_emp”,是否是错误的外向访问?

最佳答案

您必须创建两个触发器,但您可以将公共(public)代码移至过程中并让它们都调用该过程。

关于MySQL "create trigger tr_emp before insert or update",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47311631/

相关文章:

php - Strtotime 没有按预期工作

mysql - SQL WHERE 子句 : where age between x and x?

swift - 使用 Swift 在 Parse Server 中触发

MySQL 将 FOR EACH 嵌套在单个触发器中而不是多个触发器中

oracle - Oracle 中的审计

sql-server - 插入/更新/删除使用单个触发器还是多个触发器更好?

mysql - SQL 查询从以下情况的两个表中检索数据

mysql - 获取行号(如excel)

java - MySQL 中的文本版本控制

sql - 在 Derby 中插入行之前如何设置列值?