我正在尝试使用phpadmin在mysql中使用date add函数创建一个触发器并获取语法错误;我的目标是在估计的完成日期列中自动添加日期,即' fin_dt'自订单发出之日起14天。即当前日期加14天。我已经提出了以下mysql状态但是收到错误:
DELIMITER $$
CREATE TRIGGER before_insert_orderin BEFORE INSERT ON order_in
BEGIN
SET NEW.fin_dt = SELECT DATE_ADD(CURDATE(), INTERVAL 14 DAY) ;
END $$
答案 0 :(得分:0)
您的触发器语法错误。您遗失了for each row
,也无需select
来设置值。它应该是
delimiter //
create trigger before_insert_orderin before insert on order_in
for each row
begin
set new.fin_dt = date_add(curdate(),interval 14 day);
end ; //
delimiter ;
答案 1 :(得分:0)
“SET NEW.fin_dt = SELECT DATE_ADD(CURDATE(), INTERVAL 14 DAY)”附近的触发器语法 SELECT DATE_ADD 是错误的。应该是
CREATE TRIGGER `before_insert_orderin`
BEFORE INSERT ON `order_in`
FOR EACH ROW
SET NEW.fin_dt=DATE_ADD(NOW(), INTERVAL 14 DAY)