Laravel の開発に限らず、動的サイトを作成するなら、DBのテーブル間のリレーションを考えることは必須です。 そこで頻繁に出てくるキーワードが「外部キー制約」という仕組みです。 参照整合性を保つための便利な仕組みなのですが、開発初期のときは邪魔だったりします。 (※外部キーが多すぎてテーブルが消せなかったり。。) 外部キーについてはあまり意識して使ったことがなかったので、この問題にハマってしまいました。 今回はMySQLにおける外部キー(FOREIGN KEY)に関してのエントリーです。 ※なお、今回の記事ではMySQLコマンドを多用します。コマンドがあやしい方は以下をご参考ください。 MySQLコマンド(早見表) 外部キー(FOREIGN KEY)とは 外部キーとは他のテーブルのデータに参照(依存)するようにカラムにつける制約のことです。 外部キーを設定すると、関連するテーブル間の整