MariaDB 触发器,编辑时自动更新字段?

MariaDB trigger, autoupdate field on edit?

我有一个基于 Maria DB 的数据库和一个带有两个字段(例如)的 table "values":"X" 和 "Y"。 我想创建一个触发器,在插入和更新 X 时使 Y = X / 10。

我试过这样的事情:

CREATE TRIGGER my_table_trig AFTER UPDATE OF X ON values
BEGIN
     update values SET values.Y = X/10 WHERE X = NEW.X;
END;

但是显然是行不通的。我该怎么做?

你有很多问题。这应该更接近

CREATE TRIGGER my_table_trig BEFORE UPDATE ON `values`
FOR EACH ROW
     SET NEW.Y = NEW.X/10;
CREATE TRIGGER my_table_trig BEFORE INSERT ON `values`
FOR EACH ROW
     SET NEW.Y = NEW.X/10;

不清楚:如果X没变,你还要Y设置成X/10吗?

注意 BEFORENEWOLD,使用 SET,而不是 UPDATE,2 个触发器等