エラーメッセージ
SQLSTATE[42000]: Syntax error or access violation: 1059 Identifier name '**65文字以上**' is too long (SQL: alter table `*` add constraint
`**65文字以上**` foreign key (`*`) references `*` (`id`) on delete set null)
問題のコード
.php
//マイグレーションファイル内のコード
$table->foreign('*')->references('id')->on('*')->onDelete('set null');
原因
マイグレーションファイル内で65文字以上のnameを設定すると、長すぎる!
と警告が出る。
特に外部キーだと長くなりがち。
対処法
外部キーの第二引数に個別のnameを付けることができるのでそれを利用する。
.php
$table->foreign('*', 'ここにnameを書く')->references('id')->on('*')->onDelete('set null');
参考