报错[err] 1067 - invalid default value for ‘add_date’
错误 1067 - invalid default value for 'add_date' 的原因是因为 campus_news 表中的 add_date 列的默认值设置为 '0000-00-00',但这种默认值在 mysql 中是无效的。
在 mysql 5.7 及以后的版本中,严格模式不允许这种无效的日期值。
直接上解决方法
1、找到 my.ini 文件:
- 该文件通常位于 mysql 安装目录中。例如,在 windows 上,它可能在
c:\programdata\mysql\mysql server x.y\或c:\program files\mysql\mysql server x.y\目录下。 - 在 linux 上,它通常位于
/etc/mysql/my.cnf或/etc/my.cnf。
2、禁用严格模式:
[mysqld] sql_mode = ""
这将禁用所有的 sql 模式,包括严格模式。如果已经有 sql_mode 这一行,确保它被设置为空字符串 ""。
- 在my.ini文件中找到
[mysqld]部分,然后添加或修改sql_mode设置。
3、保存并关闭 my.ini 文件。
4、重启 mysql 服务:
- 在 windows 上,可以通过服务管理器(services)重启 mysql 服务,或者在命令提示符中使用以下命令:
net stop mysql net start mysql
- 在 linux 上,可以使用以下命令重启 mysql 服务:
sudo service mysql restart
- 或者:
sudo systemctl restart mysql
完成这些步骤后,严格模式将被禁用。
请注意,禁用严格模式可能会影响数据库的其他行为,因此应谨慎使用。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论