MySql 外部参照制約
こんにちは。kikedaです。
スキーマを作成して、外部参照制約をつける機会があったので、備忘録です。Googleで検索することはあるんですが、やはり自分のブログを検索して、作業する機会が多いので「他人」より「自分」に向けての、記事を多くなりそうです。
MySqlの外部参照制約
MySqlで外部キーを持つテーブルで、関係を記述することにより、外部キーの元となるマスタテーブルの値もしくは、テーブルそのもの削除と更新を防止することができます。挙動については、指定するパラメータにより細かく変えることができますが、今回の目的は、マスタテーブルのレコードを、外部キーが参照しているレコードが存在する間は、削除と更新を防止させます。 親のレコードが消されて、つながりが示されなくなるのを防ぎます。
外部参照制約をつける。
> alter table table_name add constraint 制約名 foreign key (外部キーの列名) references テーブル名(列名) on delete cascade on update cascade;
MySql Workbenchを利用することで、データベースやテーブルを定義をして、Sqlを作成することができますので、そちらから利用することもオススメです。
以上です。