是否可以让mysql通过更改其他表来更新自己?

时间:2016-03-28 23:33:50

标签: mysql

假设我有一个包含变量的table1:v1,v2,v3等

我还有另一个包含变量的table2:y1,y2,y3等。

其中y = f(v_s)。 v_s表示v1,v2,v3等中的一些

当我更新某个值时,让我说我在表1中添加了一组新的v_s数据,mysql是否可以自动更新y_s?

我也使用python来操纵我的数据库。仅供参考。

谢谢!

1 个答案:

答案 0 :(得分:1)

使用triggers相当容易。在您的情况下,代码看起来像

CREATE TRIGGER insert_table2
  BEFORE INSERT ON table1
  FOR EACH ROW
    INSERT INTO table2
        (y1, y2, y3)
      VALUES
        (f(NEW.v1), f(NEW.v2), f(NEW.v3));

NEW.v1的引用是指新插入的行中v1的值。