我的sql触发器编译,但必要时不会触发

时间:2016-04-27 19:28:18

标签: mysql sql triggers

我试图为我的桌子制作一个触发器。当我的时间表被批准时,这个触发器应该触发,这将计算到期的付款,即标准工资,加班工资和养老金工资。养老金仅在标准工资超过250时到期。这应该在前一周执行此操作,它应该更新我的工资表,确定下一个ID将是什么,并在将新记录插入我的工资单时插入新记录时间表。

经过几个小时的试图让它工作,我终于到了一个点,我不知道我的问题在哪里,因为我不再出错。 我想它可能是我的连接,但经过一些改动后仍然无法正常工作。

非常感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:2)

null不是一个价值 - 它缺乏价值。因此,将它与任何需要值的运算符(例如!=)一起使用的结果是" unknown",这不是" true",所以条件不会被解雇。

简而言之 - 不要使用!=运算符,而应使用is not运算符:

WHEN (new.timesheet_approved IS NOT NULL)
-- Here ---------------------^