Sivo 悉见

Laravel 5.8 migrate时报错: SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes

匿名 · 更新于 2019/8/12

情景:执行php artisan migrate 报错 
too long 报错

查阅了下资料说是mysql版本低,好吧mysql用phpstudy集成,可能会是有点低;

解决办法: 
可以在 AppServiceProvider.php 文件(此文件路径app/Providers/AppServiceProvider.php)里的 boot 方法里设置一个默认值:

 

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider; use Illuminate\Support\Facades\Schema; //解决错误新增

class AppServiceProvider extends ServiceProvider {     /**      * Register any application services.      *      * @return void      */     public function register()     {         //     }

    /**      * Bootstrap any application services.      *      * @return void      */     public function boot()     {        Schema::defaultStringLength(191); //解决错误新增     } }