微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Wordpress / MySQL-如何解决“ u​​ser_registered”无效的默认值

如何解决Wordpress / MySQL-如何解决“ u​​ser_registered”无效的默认值

我在MysqL 8上使用wordpress 5.5。我已完成所有设置,并去更改wp_users表的结构,但由于错误“ user_registered”的认值无效而无法修改表>

这是wordpress创建的当前列定义:

"beautify.language": {
   "html": [
       "htm","html","django-html"
   ]
},

认值更改为“ 0”会给出相同的错误消息。

表如何存在和工作但具有无效的认值?我可以输入的认值是什么,它将不会导致wordpress出现问题?

我使用的是DigitalOcean共享MysqL服务器,因此无法更改服务器模式以允许零日期时间值。

我已经看到了一些答案,但是它们都与MysqL 5.5及更低版本有关,或者不解决如何使wordpress处理此问题,或者要求更改MysqL配置,而这在这里是不可能的。

MysqL版本:8.0.19

InnoDB版本:8.0.19

wordpress版本:5.5.1

解决方法

问题是因为 sql_modes。请通过命令检查您当前的 sql_modes:

显示像'sql_mode'这样的变量; 并删除 sql_mode "NO_ZERO_IN_DATE,NO_ZERO_DATE" 以使其工作。这是mysql新版本默认的sql_mode。

您可以通过命令将sql_mode全局设置为root:

设置全局sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';

查看解决方案 here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。