在mysql中拒绝某些查询

eis*_*ati 2 mysql sql my.cnf

我无法在代码中找到触发查询的位置,并且想知道是否有一个mysql配置会在触发时拒绝该查询?例如,在我的情况下,它是UPDATE table SET col1 = NULL, col2 = NULL, col3 = NULL......请帮助!

egg*_*yal 5

如上所述,您可以使用触发器 ; 只需调用一个不存在的过程就可以在满足所需条件时引发错误.

DELIMITER ;;

CREATE TRIGGER reject_null_table_update BEFORE UPDATE ON table FOR EACH ROW
IF
      NEW.col1 IS NULL
  AND NEW.col2 IS NULL
  AND NEW.col3 IS NULL
  -- etc
THEN
  CALL raise_error();
END IF;;

DELIMITER ;
Run Code Online (Sandbox Code Playgroud)