我正在使用时间戳存储上传的pubdate。我想添加一个过滤器,按照上传年份对记录进行排序,因此需要将几个记录更改为前几年用于测试目的。当我尝试通过单击日历并选择日期来手动调整mysql中的日期时,它会标记错误。
timestamp的值设置为CURRENT_TIMESTAMP。 时间戳字段中的函数值为:
NOW
CURDATE
FROM_DAYS
FROM_UNIXTIME
PERIOD_ADD
PERIOD_DIFF
TO_DAYS
我在网上找不到与此有关的任何内容。我不需要执行手动调整日期所需的计算。
答案 0 :(得分:0)
如果问题是您在此列上使用了ON UPDATE CURRENT_TIMESTAMP
,则可以通过重新定义列来删除此设置:
ALTER TABLE yourTable MODIFY COLUMN pubdate TIMESTAMP DEFAULT CURRENT_TIMESTAMP
您也可以查看文档:
With neither DEFAULT CURRENT_TIMESTAMP nor ON UPDATE CURRENT_TIMESTAMP,
it is the same as specifying both DEFAULT CURRENT_TIMESTAMP and
ON UPDATE CURRENT_TIMESTAMP.
我猜你的表是在没有定义这两个中的任何一个的情况下创建的,导致你无法自动更新此列的行为。 会发生什么:
ON UPDATE CURRENT TIMESTAMP
MySQL使用当前时间戳更新时间戳字段