1067 即使在从 sql_mode 中删除 NO_ZERO_DATE 和 NO_ZERO_IN_DATE 值之后,Laravel 中日期 0000-00-00 00:00:00 的默认值无效

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_mode

我正在尝试 运行 一个 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 但结果相同。有人对可能发生的事情有任何了解吗?

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