Invalid default value for xxx

今天在线上部署 flask,创建数据库的时候遇到了如图的问题:

Invalid default value for xxx

通过如下命令检查当前的 sql_modes:

show variables like 'sql_mode' ; 

出现这个问题的原因是 mysql5.7 之后的版本里面 datetime 默认值设置为 0000-00-00,而 5.7 里 mysql 不允许时间戳的值为 0。

解决这个问题的方法是修改 my.cnf 文件:

vim /etc/mysql/my.cnf 

[mysqld] 中添加下面这行语句:

sql-mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

重启 mysql, 问题就得到解决了。

你可能感兴趣的:(Invalid default value for xxx)