我有这些表,我想要写一个触发器,当我在"tache“中执行一个插入语句时,考虑到datedif(datestart,dateend) > 30,我想更新表"employe”并设置salaire = salaire*0.5
F 211
以下是我不工作的尝试:
drop trigger if exists set_5_slr;
delimiter $$
create trigger set_5_slr
before insert on réalise
FOR EACH ROW
BEGIN
if datediff(new.dateDébut,new.datefin)>30
then UPDATE TABLE employé set salaire=salaire+(salaire*0.5) where mle=new.mle;
end if;
end ;
delimiter ;你能帮我解决这个问题吗?
发布于 2022-10-14 19:21:01
这是解决办法
delimiter $$
create TRIGGER réalise_AFTER_INSERT AFTER INSERT ON réalise FOR EACH ROW
BEGIN
if abs(datediff(new.dateDébut,new.datefin))>30 then
UPDATE employé set salaire=salaire*1.5 where mle=new.mle;
end if;
END $$
delimiter ;https://stackoverflow.com/questions/74073167
复制相似问题