数据库迁移

  • 问题详细:
// 执行 php artisan migrate 数据库迁移
// 问题详情:Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table `users` add unique `users_email_unique`(`email`))
数据库迁移_第1张图片
  • 原因:
public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->increments('id');
        $table->string('name');
        $table->string('email')->unique();
        $table->string('password');
        $table->rememberToken();
        $table->timestamps();
    });
}
// 以上是user表的migartion,可以看出name字段并没有声明长度,laravel默认了1071,而报错中看出数据库设置了最大是767,所以就报错了

// Laravel 5.4默认使用utf8mb4字符编码,而不是之前的utf8编码。mb4的最大字符长度为4个字节,解决方法是:

参考 - 解决方案

你可能感兴趣的:(数据库迁移)