MySQL时间戳 - 为什么全零?
-
10-07-2019 - |
题
我正在使用PHPMyAdmin,我有一个名为<!> quot; timestamp。<!>的MySQL表列。类型(惊喜!)是TIMESTAMP
,在“属性”中我将其设置为ON UPDATE CURRENT_TIMESTAMP
。
但是,每条新记录都会显示如下所示的时间戳:
0000-00-00 00:00:00
我已经将默认值显式设置为none,但是当我保存并返回查看时,它会被设置为全部为零。
相关的PHP记录页面点击此查询:
$query = "INSERT INTO `pagehit` (user_id, pageurl)
VALUES ('" . $userid . "', '" . $pageurl . "')";
整个事情都在XAMPP下运行。
我错过了什么?
解决方案
我错过了什么?
你没有更新:)
将DEFAULT CURRENT_TIMESTAMP
与ON UPDATE CURRENT_TIMESTAMP
其他提示
尝试将默认值设置为CURRENT_TIMESTAMP
,而不是将其放在属性中。
如果您的timestamp
列仅捕获插入时间,则仅使用
timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP
否则,如果是修改时间,则使用如下
timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
在我的案例中,这样做:
在phpMyAdmin中:
ALTER TABLE `name_table` ADD `name_row` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
在PHP的sintax行中:
date('Y-m-d H:i:s')
不隶属于 StackOverflow