首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql更新中的触发器

mysql更新中的触发器
EN

Stack Overflow用户
提问于 2022-10-14 18:01:39
回答 1查看 27关注 0票数 -1

我有这些表,我想要写一个触发器,当我在"tache“中执行一个插入语句时,考虑到datedif(datestart,dateend) > 30,我想更新表"employe”并设置salaire = salaire*0.5

  • 表1:employe (mle,salaire)
  • 表2:tache (mle,datestart,dateend)

F 211

以下是我不工作的尝试:

代码语言:javascript
复制
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 ;

你能帮我解决这个问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-14 19:21:01

这是解决办法

代码语言:javascript
复制
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 ;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74073167

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档