一、只有InnoDB類型的表才能夠使用外鍵。mysql默認是MyISAM,這種類型不支持外鍵約束mysql
二、外鍵的好處:保證數據的一致性和完整性並實現一些級聯操做。sql
三、建立的步驟spa
要使用外鍵必須爲這個列名創建索引,去外鍵的數據類型要與引用表中數據類型一致rest
指定主鍵關鍵字: foreign key(列名),索引
引用外鍵關鍵字: references <外鍵表名>(外鍵列名)。事件
事件觸發限制:on delete和on update , 可設參數cascade(跟隨外鍵改動)。
restrict(限制外表中的外鍵改動),set Null(設空值),set Default(設置默認值)。
[系統默認]no actionio
四、舉例table
outTable表 主鍵 id 類型 intdate
建立含有外鍵的表:數據類型
代碼以下:
create table temp(
id int,
name
char(20),
foreign key(id) references table_name(id) on delete cascade on update cascade);
說明:把id列 設爲外鍵 參照外表table_name的id列 當外鍵的值刪除 本表中對應的列篩除 當外鍵的值改變 本表中對應的列值改變。