Mysql外部キー設定

847 ワード

外部キーの役割:
外部キー・テーブルに格納されているデータを制御することを主な目的として、データの一貫性、整合性を維持します.2つのテーブルを関連付けると、外部キーは外観のカラムの値のみを参照できます.
例:
a b二つの表
a表に顧客番号、顧客名が格納されている
b表に各顧客の注文書が保存されている
外部キーがあると
bテーブルに顧客xの注文がないと確信してから、aテーブルで顧客xを削除することができます.
外部キーを確立する前提:この表の列は外部キーのタイプと同じでなければなりません(外部キーは外部キーでなければなりません).
プライマリ・キーの指定:foreign key(カラム名)
参照外部キーキー:references<外部キーテーブル名>(外部キー列名)
イベントトリガ制限:on deleteとon update、パラメータcascade(外部キーに従って変更)、restrict(外部キーの変更を制限)、set Null(空の値を設定)、set Default(デフォルト値を設定)、[デフォルト]no action
例:
outTableプライマリキーidタイプint
外部キーを含むテーブルを作成するには、次の手順に従います.
create table temp(
id int,
name char(20),
foreign key(id) references outTable(id) on delete cascade on update cascade); 

説明:id列を外部キーとして外表outTableのid列を参照する外部キーの値を削除本表の対応する列ふるいを削除外部キーの値を変更本表の対応する列値を変更する.