解决MySQL导入SQL时报错1067–Invalid default value for ‘ ’问题

 更新时间:2026年03月14日 10:08:11   作者:21:57648  
文章介绍了MySQL中报错[ERR]1067-Invaliddefaultvaluefor‘add_date’的原因,以及如何通过修改my.ini文件禁用严格模式来解决这个问题

报错[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

完成这些步骤后,严格模式将被禁用。

请注意,禁用严格模式可能会影响数据库的其他行为,因此应谨慎使用。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

最新评论