如果我用一个未在 Audit 中插入任何内容的空人更新人员,但如果我用数据、姓名等更新人员,那么如果我执行INSERT
. 我有一个带有时间表的预订表,当有人进行预订时,我会更新与时间表关联的人员字段,这会触发trigger
留下谁注册、何时等记录的人字段,但反过来我有一个事件每天 00 :00:00update
所有的人字段都是空的,这样第二天就可以再次解决,这就是问题,update
保留一个就可以了,当事件执行时,trigger
它需要 24 个空更新并插入 24审计表中的空数据
这是trigger
我目前拥有的代码
DELIMITER $$
CREATE TRIGGER Pc_Auditoria
AFTER UPDATE ON pcTotal
FOR EACH ROW
INSERT INTO auditoria (pc, personaAnterior, horario, persona, fecha_mod)
VALUES (NEW.pc, OLD.persona, NEW.horario, NEW.persona, NOW());
DELIMITER ;
当我预订时: 审计中插入的记录 ok: 事件执行时的审计如何:
您可以尝试以下方法:
它
<tu condición aca>
满足您认为对应的验证的位置。正如您在问题中提到的,如果该字段为空,则不应更新它。我想你的意思是空NULL
的,所以条件是这样的:根据您的评论:
coordinador
。pcTotal
。考虑到这一点,您的触发器将如下所示:
请注意使用该函数
COALESCE
来验证 is 的值NEW.coordinador
是否NULL
返回一个空字符串''
。