加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 语法错误或访问冲突:1067“created_at”的默认值无效

发布时间:2020-12-13 21:57:14 所属栏目:PHP教程 来源:网络整理
导读:我安装laravel 5.5并且当我运行php artisan migrate时显示我的错误 [IlluminateDatabaseQueryException] SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQ L: alter table users ad
我安装laravel 5.5并且当我运行php artisan migrate时显示我的错误

[IlluminateDatabaseQueryException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQ
L: alter table users add unique users_email_unique(email))

我在AppServiceProvider.php上添加了以下代码

public function boot()
{
     Schema::defaultStringLength(191); //Solved by increasing StringLength
}

然后告诉我这个错误

[IlluminateDatabaseQueryException]
SQLSTATE[42000]: Syntax error or access violation: 1067 Invalid default value for ‘created_at’ (SQL: create table
password_resets
(email varchar(191) not null,token varchar(191) not null,created_at timestamp not null) de
fault character set utf8mb4 collate utf8mb4_unicode_ci)

解决方法

你可以使用nullableTimestamps()而不是timestamps()

要么

$table->timestamp('created_at')->default(DB::raw('CURRENT_TIMESTAMP'));

请查看以下参考链接:

https://github.com/laravel/framework/issues/3602

https://laracasts.com/discuss/channels/forge/syntax-error-or-access-violation-1067-invalid-default-value-for-created-at

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读