【发布时间】:2019-10-13 03:54:10
【问题描述】:
我得到了一个用例,如果其他相同类型的字段发生变化,用户需要更新某个 TIME 字段。
我得到了两列
horario_arribo(时间)
horario_salida (TIME)
现在,我需要做的是以下
制作一个触发器,所以当我更改例如 horario_arribo 时,horario_salida 与 horario_arribo 的 TIME 减去 1 小时相同,如果我更新 horario_salida ,使 horario_arribo 加 1 小时。
我一直在想怎么做,首先检查尝试更新的值是否是horario_salida,然后我只是增加1小时到horario_arribo,或者如果我我正在更新 horario_arribo,与 horario_salida 相同,但要减去 1 小时。
DELIMITER //
CREATE TRIGGER modificar_horarioruta AFTER
UPDATE ON ruta
FOR EACH ROW
BEGIN
IF(new.horario_salida) THEN
SET AddTime(old.horario_arribo, '00:60:00')
ELSE
SET AddTime(old.horario_salida, Here I dont know how to minus 1 hour to that)
END IF;
END //
DELIMITER ;
这是我的数据
所以,简而言之,如果我更新 horario_salida,horario_arribo 需要提前 1 小时,如果我更新 horario_arribo, horario_salida 需要减少 1 小时。
谢谢
【问题讨论】:
标签: mysql triggers mysql-workbench