salix/db/routines/vn/triggers/roadmapStop_beforeDelete.sql

22 lines
493 B
MySQL
Raw Normal View History

2025-01-30 14:00:19 +00:00
DELIMITER $$
CREATE OR REPLACE DEFINER=`vn`@`localhost` TRIGGER `vn`.`roadmapStop_beforeDelete`
BEFORE DELETE ON `roadmapStop`
FOR EACH ROW
BEGIN
DECLARE vMaxEta DATETIME;
IF OLD.roadmapFk IS NOT NULL THEN
SELECT MAX(eta) INTO vMaxEta
FROM roadmapStop
WHERE roadmapFk = OLD.roadmapFk
AND id <> OLD.id;
IF OLD.eta > vMaxEta OR vMaxEta IS NULL THEN
UPDATE roadmap
SET eta = COALESCE(vMaxEta, OLD.eta)
WHERE id = OLD.roadmapFk;
END IF;
END IF;
END$$
DELIMITER ;