本文介绍了到期日期为TIMESTAMP列的默认值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否有任何方法可以将列的默认值设置为过期日期(从 CURRENT_TIMESTAMP
起的某些小时)?
Is there any way to set the default value for a column as an expire date (some hours from CURRENT_TIMESTAMP
)?
我已经尝试过:
ALTER TABLE `table`
ADD COLUMN `expire` TIMESTAMP NOT NULL DEFAULT TIMESTAMPADD(HOUR, 5, CURRENT_TIMESTAMP);
但没有工作..
推荐答案
您无法在表格定义中实现复杂的默认值。
You can't implement a complex default value like that in the table definition.
您需要:
DELIMITER $$
DROP TRIGGER IF EXISTS tr_b_ins_table $$
CREATE TRIGGER tr_b_ins_table BEFORE INSERT ON table FOR EACH ROW BEGIN
SET NEW.expire = NOW() + INTERVAL 5 HOUR;
END $$
DELIMITER ;
这篇关于到期日期为TIMESTAMP列的默认值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!