日期时间格式无效:1292日期时间值不正确

时间:2017-02-27 15:54:14

标签: php mysql datetime pdo

当我尝试使用字段(日期时间)

更新表时,我收到以下错误
  

致命错误:未捕获的异常'PDOException',消息'SQLSTATE [2007]:无效的日期时间格式:1292日期时间值不正确:'02 -27-2017 16:37',用于上次更新的列

我的PHP代码使用PDO

$lastupdated = date('m-d-Y H:i:s');
$run = $conn->prepare($sql);
$run->bindParam(':lastupdated', $lastupdated, PDO::PARAM_STR); 

SQL lastupdated,数据类型为datetime

现有数据

enter image description here

1 个答案:

答案 0 :(得分:17)

您需要格式化"Y-m-d H:i:s"之类的日期才能使用MySQL datetime字段。

即。 :

$lastupdated = date('Y-m-d H:i:s');

来自documentation

  

DATETIME类型用于包含日期和时间部分的值。 MySQL以'YYYY-MM-DD HH:MM:SS'格式检索并显示DATETIME值。支持的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。