首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用utc时间戳、mysql和php的过期日期?

问使用utc时间戳、mysql和php的过期日期?
EN

Stack Overflow用户
提问于 2009-07-15 05:04:05
回答 3查看 2.2K关注 0票数 0

如何将时间或天数添加到当前utc_timestamp

我正在使用;

代码语言:javascript
复制
new CDbExpression('UTC_TIMESTAMP()')

对于我的mysql表中的“已创建”和“已更新”字段,但我想添加一个“过期”字段,这将允许从创建日期起4天。我认为这是可能的,但不确定如何实现。

EN

回答 3

Stack Overflow用户

发布于 2009-07-15 05:11:23

用于插入/更新当前时间

更新表格集合created = NOW()

对于从创建日期开始的4天,选择* from table WHERE created > DATE_SUB( NOW( ),间隔4天)

http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html

票数 0
EN

Stack Overflow用户

发布于 2009-07-15 05:12:30

在MySQL中:

代码语言:javascript
复制
ALTER TABLE `table` 
    ADD expiry datetime DEFAULT DATE_ADD( utc_timestamp( ) , INTERVAL 4 DAY);
票数 0
EN

Stack Overflow用户

发布于 2012-07-03 18:44:52

“数据类型规范中的DEFAULT value子句指示列的默认值。除了一个例外,默认值必须是常量;它不能是函数或表达式。这意味着,例如,您不能将日期列的默认值设置为NOW()或CURRENT_DATE等函数的值。”

因此,这是明确记录的限制

如果您的MySQL版本低于5.6.5,则必须创建TRIGGER

而不是

MySQL 5.6.5 changelog stats

从MySQL 5.6.5开始,、TIMESTAMP和DATETIME列可以自动初始化并更新为当前日期和时间(即当前时间戳)。在5.6.5之前,只有时间戳是正确的,并且每个表最多有一个时间戳列。

参考资料:

http://bugs.mysql.com/bug.php?id=27645

http://optimize-this.blogspot.in/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1129493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档