触发器以另一个表的持续时间计算结束时间

时间:2018-01-12 18:20:44

标签: mysql

我想做一个触发器来计算一个结束时间,从同一个表上的开始时间和另一个表中的持续时间开始。

我的表议程(服务,日期,开始时间,结束时间)和我的服务表有(ID_Serv,价格,持续时间)

我对mysql的了解不多,这段代码不起作用,你能帮帮我吗

DELIMITER $$
CREATE TRIGGER Calc_Endtime 
BEFORE INSERT ON Agenda
FOR EACH ROW
BEGIN
UPDATE Agenda

    SET NEW.Endtime = ADDTIME ( NEW.Starttime, Service.Duration)
WHERE ID_Serv = NEW.Serv;

END $$

1 个答案:

答案 0 :(得分:0)

这里有一些关于mysql的元素的混淆,以下几行没有针对缺少的表定义进行测试:

...
BEGIN
 NEW.Endtime = (SELECT ADDTIME(NEW.Starttime, Duration) 
                 FROM Service WHERE ID_Serv = NEW.Serv);
END $$