【问题标题】:trigger to calculate end time with a duration from another table触发器以计算来自另一个表的持续时间的结束时间
【发布时间】:2018-01-12 18:20:44
【问题描述】:

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

我的表 Agenda 有 (Serv, Date, Starttime, Endtime),我的 Service 表有 (ID_Serv, Price, Duration)

我对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 $$

【问题讨论】:

    标签: mysql


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 2017-08-22
      • 2022-11-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-22
      • 1970-01-01
      • 2015-03-13
      • 2011-07-30
      • 1970-01-01
      相关资源
      最近更新 更多