我想让“总计”列接收其他列之间的总和,但我不断收到错误 1193。 我是 mySql 的新手,所以我不知道应该从哪里开始寻找解决错误的方法。
DELIMITER $$
CREATE TRIGGER Total
BEFORE INSERT ON `despesas` FOR EACH ROW
BEGIN
SET Total = Abertura_Processo+Telefone+Correspondencia+Cartorio+Conservatorio+Servico_Financas+Taxas_Emolumentos+Honorarios;
END;
$$
DELIMITER ;
我读了一些内容,根据我的理解,我需要创建一个变量,但我不知道如何创建。 The total column has its values manually inserted i want it to be automatically
最佳答案
您可以通过插入前触发器中的NEW.column_name
引用新插入记录的字段。通过为此类列设置值,您可以更改插入的值。因此,按如下方式更改值设置行:
SET NEW.Total = NEW.Abertura_Processo+NEW.Telefone+NEW.Correspondencia+NEW.Cartorio+NEW.Conservatorio+NEW.Servico_Financas+NEW.Taxas_Emolumentos+NEW.Honorarios;
注意,您可以使用generated columns作为此触发器的替代方案。
关于mysql - 触发器语法 mySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44294108/