Mysql 无法将当前时间戳设置为默认值

Mysql 无法将当前时间戳设置为默认值,mysql,timestamp,default,Mysql,Timestamp,Default,我正在尝试将当前_时间戳设置为phpmyadmin中日期类型的默认值。我首先尝试设置日期类型,然后设置为日期时间类型,但出现以下错误: #1067 - Invalid default value for 'registered_at' 那么,如何将当前时间戳设置为默认值呢?您需要使用MySQL Server 5.6.5或更高版本才能做到这一点。您还需要使用TIMESTAMP或DATETIME数据类型。它和日期不匹配 本手册中的示例显示了时间戳和日期时间: CREATE TABLE t1 (

我正在尝试将当前_时间戳设置为phpmyadmin中日期类型的默认值。我首先尝试设置日期类型,然后设置为日期时间类型,但出现以下错误:

#1067 - Invalid default value for 'registered_at'

那么,如何将当前时间戳设置为默认值呢?

您需要使用MySQL Server 5.6.5或更高版本才能做到这一点。您还需要使用TIMESTAMP或DATETIME数据类型。它和日期不匹配

本手册中的示例显示了时间戳和日期时间:

CREATE TABLE t1 (
  ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  dt DATETIME DEFAULT CURRENT_TIMESTAMP
);
如果您有早期版本的MySQL服务器,则只需要使用时间戳数据类型。DATETIME不起作用


阅读了解更多信息。

请向我们展示相关代码。如果您不发布代码,我们将无法帮助您。我们不知道什么可能是打字错误或其他什么。我们无法用看不见的代码解决问题。列的定义也是相关的。请参阅。@KenWhite帖子在phpmyadmin中确实提到了我的日期类型。@ceejayoz:我已经记不清这里有多少问题说我试图对我的日期列做些什么,但却发现它被定义为VARCHAR。@Nemus使用phpmyadmin中的preview sql按钮来查看将要运行的sql语句。。。