我有表algas
,其中我有列(我需要)工作小时数,小时费率和工资。
基本上我需要的是制作触发器,当其中一个(工作时间,每小时费率)发生变化时,它会计算工资。
Salary - column
Salaries - table name
我尝试了很多方法,但都没有效果。最新代码:
CREATE TRIGGER sum_algas AFTER INSERT ON Salaries
FOR EACH ROW
SET NEW.`Salary` = NEW.`Hourly rate` * NEW.`Worked Hours`;
ERROR:
MySQL说:文档 #1362 - 触发后不允许更新新行
CREATE TRIGGER trigger_alga_sum
BEFORE INSERT OR UPDATE ON mydb.algas
FOR EACH ROW
DECLARE
algas_summa integer;
alga_ref integer;
BEGIN
alga_ref := NEW.`Alga`;
algas_summa := NEW.`Nostrādātās stundas` * NEW.`Stundas likme`;
alga_ref = algas_summa;
END;
ERROR:
#1064 - 您的SQL语法出错;检查与您的MariaDB服务器版本相对应的手册,以便在第4行“或更新为mydb.algas FOR EACH ROW DECLARE algas_summa integer”附近使用正确的语法