在mysql创建多个触发器



插入前需要将所有的temp值除以10

INSERT INTO `gdc_1`(`date`,`time`, `top_die_temp`, `bottom_die_temp`, `side_die_temp`) VALUES ('2021-10-18','23:18','339','356','456')

如何创建多个触发器?

您可以在一个触发器中这样做:

DELIMITER ;;
CREATE TRIGGER t BEFORE INSERT ON gdc_1
FOR EACH ROW BEGIN
SET NEW.top_die_temp = NEW.top_die_temp / 10;
SET NEW.bottom_die_temp = NEW.bottom_die_temp / 10;
SET NEW.side_die_temp = NEW.side_die_temp / 10;
END;;
DELIMITER ;

我不认为你需要为此创建多个触发器,但作为参考,你可以在MySQL 5.7或更高版本中为每个表创建多个触发器:

DELIMITER ;;
CREATE TRIGGER t1 BEFORE INSERT ON gdc_1
FOR EACH ROW BEGIN
SET NEW.top_die_temp = NEW.top_die_temp / 10;
END;;
CREATE TRIGGER t2 BEFORE INSERT ON gdc_1
FOR EACH ROW BEGIN
SET NEW.bottom_die_temp = NEW.bottom_die_temp / 10;
END;;
CREATE TRIGGER t3 BEFORE INSERT ON gdc_1
FOR EACH ROW BEGIN
SET NEW.side_die_temp = NEW.side_die_temp / 10;
END;;
DELIMITER ;

如果您需要禁用其中一个操作而不更改其他操作,则可以选择使用单独的触发器。

最新更新