Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 实时和日期插入MySQL服务器_Php_Mysql_Date_Time - Fatal编程技术网

Php 实时和日期插入MySQL服务器

Php 实时和日期插入MySQL服务器,php,mysql,date,time,Php,Mysql,Date,Time,我有一个MySQL查询: $SQLquery = "INSERT INTO `experimental`.`comments` (`comment_id`, `comment_dt`) VALUES (NULL, CURRENT_TIMESTAMP);"; 当我在MySQL数据库中的注释处用PHP执行这一行时,行显示我的计算机本地时间和日期。有人知道如何设置在我的数据库中显示服务器本地时间和日期吗 使用MySQL服务器函数CURRENT_TIMESTAMP最好的方法

我有一个MySQL查询:

$SQLquery = "INSERT INTO `experimental`.`comments` (`comment_id`, `comment_dt`) 
             VALUES (NULL, CURRENT_TIMESTAMP);";
当我在MySQL数据库中的注释处用PHP执行这一行时,行显示我的计算机本地时间和日期。有人知道如何设置在我的数据库中显示服务器本地时间和日期吗


使用MySQL服务器函数CURRENT_TIMESTAMP

最好的方法是将您的注释列设置为DATETIME类型,并将默认值设置为CURRENT_TIMESTAMP。无需通过insert查询手动插入

每次插入新行时,您的注释将自动更新为服务器日期时间

ALTER TABLE comments ADD comment_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP 

当我在数据库注释栏中使用CURDATE函数时:0000-00-00 00:00:00您的注释数据类型是什么?您可以尝试在mysql命令行工具ALTER TABLE comments ADD comment_dt DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP mysql error:1067-comment_dt的默认值无效为什么我要在comment_dt列DATETIME中运行SELECT CURDATE?使用TIMESTAMP type而不是DATETIME type OK I解决了这个问题,但在我的数据库中仍然输入了我的计算机日期和时间。例如,当我在数据库中使用PHP执行MySQL查询行时,如果我将本地计算机日期更改为2010年,则会存储错误的日期,这是不可能的。你的数据库服务器在哪里?在本地主机上?是的。如果从本地主机运行,它将从本地系统获取
ALTER TABLE comments ADD comment_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP