Laravelの外部キー制約
外部キー制約
外部キー制約とは、親テーブルと子テーブルの2つのテーブル間でデータの整合性を保つために設定される制約。
外部キー制約を使うことで、親テーブル側で更新や削除をしたとき、紐付いている子テーブルも同時に更新や削除を行ったりできる。
Laravelの外部キー制約
以下の例では、user_idカラムは、usersテーブルのidカラムを参照している。
さらにonDelete('cascade')を付けることで、いいねをしたユーザーがusersテーブルから削除された場合には、likesテーブルから、そのユーザーに紐づくレコードが削除される。
<?php Schema::create('likes', function (Blueprint $table) { $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); });