Mysql 主鍵 超鍵 候選鍵 外來鍵

2021-09-26 06:01:49 字數 1077 閱讀 6272

超鍵(super key): 在關係中能唯一標識元組的屬性集稱為關係模式的超鍵

候選鍵(candidate key): 不含有多餘屬性的超鍵稱為候選鍵。也就是在候選鍵中,若再刪除屬性,就不是鍵了!

主鍵(primary key): 使用者選作元組標識的乙個候選鍵程式主鍵

外來鍵(foreign key):如果關係模式r中屬性k是其它模式的主鍵,那麼k在模式r中稱為外來鍵。

比如有如下資料:

| 學號 | 姓名 | 性別 | 年齡 | 系別 | 專業 

|:---:|:---:|:---:|:---:|:---:|:---:

|20020612 |李輝 |男 |20 |計算機 |軟體開發 

|20060613| 張明| 男 |18 |計算機 |軟體開發 

|20060614| 王小玉| 女 |19 |物理 |力學 

|20060615| 李淑華| 女 |17 |生物 |動物學 

|20060616| 趙靜| 男 |21 |化學 |食品化學 

|20060617| 趙靜| 女 |20 |生物 |植物學

1. 超鍵

在關係中能唯一標識元組的屬性集稱為關係模式的超鍵。

於是我們從例子中可以發現 學號是標識學生實體的唯一標識。那麼該元組的超鍵就為學號。

除此之外我們還可以把它跟其他屬性組合起來,比如:

(`學號`,`性別`)

(`學號`,`年齡`)

這樣也是超鍵.

2. 候選鍵

不含多餘屬性的超鍵為候選鍵。

根據例子可知,學號是乙個可以唯一標識元組的唯一標識,因此學號是乙個候選鍵,實際上,候選鍵是超鍵的子集,比如 (學號,年齡)是超鍵,但是它不是候選鍵。因為它還有了額外的屬性。

3. 主鍵

使用者選擇的候選鍵作為該元組的唯一標識,那麼它就為主鍵。

簡單的說,例子中的元組的候選鍵為學號,但是我們選定他作為該元組的唯一標識,那麼學號就為主鍵。

4. 外來鍵

外來鍵是相對於主鍵的,比如在學生記錄裡,主鍵為學號,在成績單表中也有學號字段,因此學號為成績單表的外來鍵,為學生表的主鍵。

主鍵為候選鍵的子集,候選鍵為超鍵的子集,而外鍵的確定是相對於主鍵的。

超鍵 候選鍵 主鍵 外來鍵

超鍵 super key 在關係中能唯一標識元組的屬性集稱為關係模式的超鍵 候選鍵 candidate key 不含有多餘屬性的超鍵稱為候選鍵 主鍵 primary key 關係模式中使用者正在使用的候選鍵稱主鍵,主鍵是人為規定的 外來鍵 foreign key 如果關係模式r1中的某屬性集不是r1...

超鍵 候選鍵 主鍵 外來鍵

超鍵 在關係中能唯一標識元組的屬性集稱為關係模式的超鍵。乙個屬性可以為作為乙個超鍵,多個屬性組合在一起也可以作為乙個超鍵。超鍵包含候選鍵和主鍵。候選鍵 是最小超鍵,即沒有冗餘元素的超鍵。主鍵 資料庫表中對儲存資料物件予以唯一和完整標識的資料列或屬性的組合。乙個資料列只能有乙個主鍵,且主鍵的取值不能缺...

超鍵 候選鍵 主鍵 外來鍵 聯合主鍵 復合主鍵

首先看看各種鍵的定義 超鍵 super key 在關係中能唯一標識元組的屬性集稱為關係模式的超鍵 只要有乙個鍵唯一,再隨便組其他的鍵,合起來叫主鍵 候選鍵 candidatekey 不含有多餘屬性的超鍵稱為候選鍵 最小的超鍵,id,身份證號 主鍵 primary key 關係型資料庫中的一條記錄中有...