背景
とあるゲームのクランメンバー募集サイトを作っていて、Users、Threads(板 スレ)、Commentsの三つのテーブルで外部キー連携しようとした際にエラーが出た。
エラーの内容はこれ
SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint
(SQL: alter table `comments` add constraint `comments_user_id_foreign`
foreign key (`user_id`) references `users` (`id`) on delete cascade on update cascade)
外部キーが追加できないよーとのことなので、とりあえずググってみた。
結論
こちらの記事にもあるように、連携したいテーブルのカラム同士でidの型が違っていたことが原因。
Laravelの機能で作ったUsersのidは最初からBigIncrementsなので、user_isはbigIntegerを指定してあげないとダメらしい