DBMS 中各種型別的鍵
DBMS 中的不同型別的鍵如下:
- 候選鍵 - 表中的候選鍵定義為一組最小的鍵,可以唯一標識表中的任何資料行。
- 主鍵 - 主鍵是從候選鍵中選擇的一個鍵,併成為表的標識鍵。它可以唯一標識表中的任何資料行。
- 超鍵 - 超鍵是主鍵的超集。超鍵包含一組屬性,包括主鍵,這些屬性可以唯一標識表中的任何資料行。
- 組合鍵 - 如果表的任何單個屬性都不能作為鍵,即它不能唯一標識一行,那麼我們將兩個或多個屬性組合起來形成一個鍵。這被稱為組合鍵。
- 次要鍵 - 候選鍵中只有一個被選為主鍵。其餘的被稱為次要鍵。
- 外部索引鍵 - 外部索引鍵是表中充當另一個表主鍵的屬性值。因此,外部索引鍵可用於將兩個錶鏈接在一起。應非常小心地在外部索引鍵列中輸入資料,因為錯誤輸入的資料可能會使兩個表之間的關係失效。
一個解釋不同鍵的示例如下:
<學生>
| 學號 | 學生姓名 | 學生電話 | 課程號 |
|---|---|---|---|
| 1 | 安德魯 | 6615927284 | 10 |
| 2 | 薩拉 | 6583654865 | 20 |
| 3 | 哈里 | 4647567463 | 10 |
<課程>
| 課程號 | 課程名稱 | 課程講師 |
|---|---|---|
| 10 | 資料庫管理系統 | 科斯 |
| 20 | 演算法 | 科曼 |
| 30 | 演算法 | 萊瑟森 |
<選課>
| 學號 | 課程號 |
|---|---|
| 1 | 10 |
| 2 | 20 |
| 3 | 10 |
<學生> 表中的超鍵為:
{Student_Number}
{Student_Phone}
{Student_Number,Student_Name}
{Student_Number,Student_Phone}
{Student_Number,Subject_Number}
{Student_Phone,Student_Name}
{Student_Phone,Subject_Number}
{Student_Number,Student_Name,Student_Phone}
{Student_Number,Student_Phone,Subject_Number}
{Student_Number,Student_Name,Subject_Number}
{Student_Phone,Student_Name,Subject_Number}<課程> 表中的超鍵為:
{Subject_Number}
{Subject_Number,Subject_Name}
{Subject_Number,Subject_Instructor}
{Subject_Number,Subject_Name,Subject_Instructor}
{Subject_Name,Subject_Instructor}<選課> 表中的超鍵為:
{Student_Number,Subject_Number}<學生> 表中的候選鍵為 {學號} 或 {學生電話}
<課程> 表中的候選鍵為 {課程號} 或 {課程名稱,課程講師}
<學生> 表中的候選鍵為 {學號,課程號}
<學生> 表中的主鍵為 {學號}
<課程> 表中的主鍵為 {課程號}
<選課> 表中的主鍵為 {學號,課程號}
<選課> 表中的組合鍵為 {學號,課程號}
<學生> 表中的次要鍵為 {學生電話}
<課程> 表中的次要鍵為 {課程名稱,課程講師}
{課程號} 是 <學生> 表的外部索引鍵,也是 <課程> 表的主鍵。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP