關於mysql裡 主鍵,外來鍵,預設 聯級刪除的問題

2021-04-30 09:49:01 字數 625 閱讀 2662

資料庫mysql

建立外來鍵的前提: 本表的列必須與外來鍵型別相同(外來鍵必須是外表主鍵)。

外來鍵作用: 使兩張表形成關聯,外來鍵只能引用外表中的列的值!

指定主鍵關鍵字: 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列 當外來鍵的值刪除 本表中對應的列篩除 當外來鍵的值改變 本表中對應的列值改變。

自己實踐 才能完全了解外來鍵的作用 關鍵是:事件觸發限制的作用

mysql 主鍵 外來鍵

1 候選鍵 關係中的乙個屬性組,其值能唯一標識乙個元組,若從該屬性組中去掉任何乙個屬性,它就不具有這一性質了,這樣的屬性組稱作候選碼。比如人的自然屬性 身高,體重,年齡,指紋樣式.2 主鍵 當有多個候選碼時,可以選定乙個作為主碼,選定的候選碼稱主鍵。主鍵是能確定一條記錄的唯一標識 比如上面例子中的指...

mysql主鍵 外來鍵

主鍵是能確定一條記錄的唯一標識,主鍵字段必須唯一,必須非空,乙個表中只能有乙個主鍵,主鍵可以包含乙個或多個字段。打個比方,一條記錄包括身份正號,姓名,年齡,學校,國籍,性別等。身份證號是唯一能確定你這個人的,其他都可能有重複,所以,身份證號是主鍵。外來鍵表示了兩個關係之間的相關聯絡。以另乙個關係的外...

mysql的主鍵 外來鍵約束 MySQL 主鍵外來鍵

笛卡兒積 多表查詢 多個表變成乙個表 完整性約束條件 primary key 標識該屬性為該錶的主鍵,可以唯一的標識對應的元組 foreign key 標識該屬性為該錶的外來鍵,是與之聯絡的某錶的主鍵 not null 標識該屬性不能為空 unique 標識該屬性的值是唯一的 auto increm...