mysql 索引 鍵 主鍵 外鍵等概念徹底理清楚

參考文章:
Mysql 索引詳解和優化
數據庫原理-幾種數據模型
Mysql中的key和index的區別 (講的很合理)
Mysql中的Cascade,NO ACTION,Restrict,SET NULL幾種功能說明
Mysql中key 、primary key 、unique key 與index區別

重點總結:

1、mysql 的特點: 括號裏面是-類型,外面是-名字。
2、主表、附表都必須用 InnoDB引擎。
3、只有附表纔用到 constraint約束、FOREIGN KEY外鍵、REFERENCES引用參考 三個陌生的東西(SQL語句中可以看到)
4、主沒有子不能增加,子有主不能刪。特例:子表(外鍵所在表)的外鍵可以爲NULL,前面的規律作廢(與主表引用列無關)。
5、主表的 約束鍵 叫:引用列、子表的約束鍵 叫:外鍵
6、Mysql中key 、primary key 、unique key 與index區別:前面三個是用戶級別的概念,包含constraint、index。index是硬件級別的,放在硬盤的一個文件。

不存在歧義的概念:

1、 primary key
數據庫的每張表只能有一個主鍵,不可能有多個主鍵。所謂的一張表多個主鍵,我們稱之爲聯合主鍵。聯合主鍵就是用多個字段一起作爲一張表的主鍵。主鍵的主鍵的作用是保證數據的唯一性和完整性,同時通過主鍵檢索表能夠增加檢索速度。
唯一性:列可以不唯一,但聯合起來必須唯一。
2、

存在歧義的概念:

key 和 索引index
1、索引—在SQL語句裏叫 key

錯綜複雜的關係:

1、primary key 與 外鍵

一圖理解:

在這裏插入圖片描述

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