如何在编辑一个表的列时更新另一个表的列

shstlldc  于 2021-06-23  发布在  Mysql
关注(0)|答案(1)|浏览(261)

我有一个表,表中的列由id、name、description和count组成。此表中的每一行都有一个与另一个表相对应的名称。
例如,我的一行名为“carcinoma”。存在另一个名为“carcinoma”的表。
我希望第一个表的列计数在每次将行添加到“carcinoma”列时更新。例如,如果表“carcinoma”有4行,我希望第一个表中的count列的carcinoma行的值为4。当我从第二个表中插入或删除一行时,有没有一种方法可以自动更新count列?

第一张table

id名称计数
1.0个

第二个表名为carcinoma

身份证名称
1个鳞状细胞
2腺
3基底细胞
4导管细胞

mec1mxoz

mec1mxoz1#

您需要在每个辅助表上创建一个触发器。例如:

DELIMITER //
CREATE TRIGGER carcinoma_increment AFTER INSERT ON carcinoma
       FOR EACH ROW
BEGIN
    UPDATE firsttable
        SET count = count + 1
        WHERE name = 'Carcinoma';
END;
DELIMITER ;

你可能还想 DELETE 表上的触发器。

相关问题