MySQL - 表的創建_列的完整性約束_外鍵約束

列的完整性約束_外鍵約束

設置表字段的外鍵約束(FOREIGN KEY,FK)

外鍵是表的一個特殊字段,外鍵約束是爲了保證多個表(通常爲兩個表)之間的參照完整性,即構建兩個表的字段之間的參照關係。

設置外鍵約束的兩個表之間具有父子關係,即子表中某個字段的取值範圍由父表決定。例如,表示一個班級和學生關係,即每個班級有多個學生。首先應該有兩個表:班級表和學生表,然後學生表有一個表示班級編號的字段no,其依賴於班級表的主鍵,這樣字段no就是學生表的外鍵,通過該字段班級表和學生表建立了關係。

一個班級表:
在這裏插入圖片描述
每一行對應着一個班級,而一個班級對應着多個學生,所以班級表和學生表的關係就是“一對多”:
在這裏插入圖片描述
在具體設置FK約束時,設置FK約束的字段必須依賴於數據庫中已經存在的父表的主鍵,同時外鍵可以爲空(NULL)。

具體操作

在這裏插入圖片描述

create table student(id int PRIMARY KEY AUTO_INCREMENT, name varchar(64) NOT NULL, class_id int, sex enum('M', 'F'), FOREIGN KEY(class_id) REFERENCES class(id));

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

結語:

時間: 2020-07-07

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章