Mysql #1067-DATETIME'的默认值无效;加上时间';

Mysql #1067-DATETIME'的默认值无效;加上时间';,mysql,algorithm,Mysql,Algorithm,当我导入csgonitro_csgonitro.gz时,会出现此错误 Mysql表示DATETIME列有一个“无效的默认值”。指定的默认值为CURRENT\u TIMESTAMP 这些是csgonitrocsgonitro.gz的内容 我对PHP、mySQl几乎一无所知,因此非常感谢您为解决此问题而进行的演练。mySQl(5.6.5版之前)不允许将函数用于默认日期时间值 尝试更新MySQL,它应该可以工作 看起来您正在使用phpmyadmin创建表。可能从不同版本的mysql导入 根据您能做

当我导入csgonitro_csgonitro.gz时,会出现此错误

Mysql表示DATETIME列有一个“无效的默认值”。指定的默认值为
CURRENT\u TIMESTAMP

这些是csgonitrocsgonitro.gz的内容

我对PHP、mySQl几乎一无所知,因此非常感谢您为解决此问题而进行的演练。

mySQl(5.6.5版之前)不允许将函数用于默认日期时间值


尝试更新MySQL,它应该可以工作

看起来您正在使用phpmyadmin创建表。可能从不同版本的mysql导入

根据您能做什么或想做什么,您有几个选项:

  • 更新您的mysql版本(可能不可能,因为您不负责服务器)
  • 更改“添加时间”列以删除默认的当前时间戳
    `add\u time`datetime默认为空,
  • 更改add_time列以将数据类型更改为timestamp
    `add_time`时间戳不为空默认当前时间戳,
第一个选项不需要对PHP代码进行任何更改。其他两个选项可能会

更改为空默认值意味着您必须确保在添加项目时应用程序将填写一个值


更改为时间戳需要应用程序在从数据库读取数据时在时间戳和日期之间进行转换。

您使用的是哪个版本的mysql?一些旧版本不会自动在日期时间和时间戳之间转换。您可以将add_time列声明为时间戳