Mysql用curdate更新时间戳

时间:2014-06-17 09:48:07

标签: mysql perl

我正在使用Perl和Mysql,我在Navicat中测试了这个查询

UPDATE table SET times = ADDDATE(CURDATE(), INTERVAL 1 DAY) WHERE id = 1;

例如,当我在Navicat执行时,我得到结果2014-06-18 00:00:00 当我从perl脚本执行此查询时,我得到2014-06-18 15:22:12 为什么perl脚本不是00:00:00? 列时间具有类型时间戳。

1 个答案:

答案 0 :(得分:1)

我认为perl连接器(DBI)正在添加当前时间(Hh:mm:ss),而Navicat的连接器则没有。我的建议是使用 NOW()而不是 CURDATE(),这应该可以解决这个问题。

MySQL Dates

或者,如果您希望它是00:00:00,那么试试这个:

DATE_FORMAT(ADDDATE(CURDATE(), INTERVAL 1 DAY), '%Y-%m-%d') DATEONLY