【问题标题】:1067 Invalid default value for date 0000-00-00 00:00:00 in Laravel even after removing NO_ZERO_DATE and NO_ZERO_IN_DATE values from sql_mode1067 即使从 sql_mode 中删除 NO_ZERO_DATE 和 NO_ZERO_IN_DATE 值,Laravel 中日期 0000-00-00 00:00:00 的默认值也无效
【发布时间】:2021-10-21 06:41:50
【问题描述】:

我正在尝试运行在这一行失败的 Laravel 迁移

$table->dateTime('start_date')->nullable()->default('0000-00-00 00:00:00');

我收到以下错误:

1067 Invalid default value for 'start_date'

即使在从 sql_mode 中删除 NO_ZERO_DATE 和 NO_ZERO_IN_DATE 值之后。

我正在使用 XAMPP,我运行了以下命令:

SET GLOBAL sql_mode=''

SET SESSION sql_mode=''

SET sql_mode=''

我还从 my.ini xampp 文件中删除了它们,但即便如此,我还是遇到了错误。

我还尝试将排序规则从 utf8_general_ci 更改为 latin1_swedish_ci,但结果相同。有人对可能发生的事情有任何见解吗?

【问题讨论】:

    标签: php mysql laravel database-migration


    【解决方案1】:

    您可以检查config/database.php 中的配置文件,参数strict => false 应该是。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-16
      • 2019-04-02
      • 1970-01-01
      • 2016-06-04
      • 1970-01-01
      • 2014-10-10
      相关资源
      最近更新 更多