我创建了一个包含日期列的表(使用用户输入完成)。是否可以在输入日期+ 30天内添加自动填充的列?先感谢您。
答案 0 :(得分:2)
列设置不可能,但您可以使用触发器:
DELIMITER //
CREATE TRIGGER interval_bi BEFORE INSERT ON your_table
FOR EACH ROW
BEGIN
IF NEW.mydate
THEN
SET NEW.date_and_30 = DATE_ADD(NEW.mydate, INTERVAL 30 DAY);
END IF;
END //
DELIMITER ;
BEFORE UPDATE
相同。
答案 1 :(得分:1)
您可以使用before insert触发器创建此类列。
但是,为什么要这么麻烦?您还可以创建包含此信息的视图:
create view v_table as
select t.*, (inputdate + interval 1 month) as OneMonthLater
from table;
答案 2 :(得分:1)
您可以使用触发器来实现此目的。 See this link