候選鍵

候選鍵

在關係模型中,候選鍵又稱候選碼(英語:candidate key),是某個關係變數的一組屬性所組成的集合,它需要同時滿足下列兩個條件:

1.這個屬性集合始終能夠確保在關係中能唯一標識元組。

2.在這個屬性集合中找不出合適的真子集能夠滿足條件。

滿足第一個條件的屬性集合稱為超鍵,因此我們也可以把候選鍵定義為"最小超鍵",即不含有多餘屬性的超鍵。

基本介紹

  • 中文名:候選鍵
  • 外文名:Candidate key
  • 別稱:候選碼
  • 套用學科:資料庫
定義,集合,二維表,相關概念,套用,

定義

集合

如果關係模式R(u)的屬性集合K ∈u 的候選鍵。
(1)R(u)的任何一個關係實例的任意兩個元素在屬性集合K上的值部不相同————唯一性
(2)K的任何真子集都不滿足條件 ————最小性
通俗點,候選鍵在每一行數據里的值都不相同,可以說成是候選的主鍵。

二維表

候選鍵是唯一標識表中每一行的鍵。候選鍵可以是單列鍵,也可以是複合鍵。
例如下列學生表中“學號”或“圖書證號”都能唯一標識一個元組,則“學號”和“圖書證號”都能唯一地標識一個元組,則“學號”和“圖書證號”都可作為學生關係的候選鍵。
學號
姓名
性別
年齡
圖書證號
所在系
S3001
張明
22
B20050101
外語
S3002
李靜
21
B20050102
外語
S4001
趙麗
21
B20050301
管理
而在選課表中,只有屬性組“學號”和“課程號”才能唯一地標識一個元組,則候選鍵為(學號,課程號)。
學號
課程號
S3001
C1
S3001
C2
S3002
C1
S4001
C3
一個關係可以有多個候選鍵,可以從中選擇一個作為查詢、插入或刪除元組操作編了,被選用的候選鍵稱為主關鍵字,或簡稱主鍵,是DBMS用於唯一標識表中每一行的候選鍵。

相關概念

從超鍵的定義來解釋什麼是候選鍵。
超鍵(super key):在關係中能唯一標識元組的屬性集稱為關係模式的超鍵
候選鍵
候選鍵(candidate key):不含有多餘屬性的超鍵稱為候選鍵。
主鍵(primary key):用戶選作元組標識的一個候選鍵作為主鍵。

套用

在SQL Server資料庫中,有一個學生信息表如下所示,在該表中能作為候選鍵的屬性集合為( ) (選擇一項)
學號 姓名 性別 年齡 系別 專業
20020612 李輝 男 20 計算機 軟體開發
20060613 張明 男 18 計算機 軟體開發
20060614 王小玉 女 19 物理 力學
20060615 李淑華 女 17 生物 動物學
20060616 趙靜 男 21 化學 食品化學
20060617 趙靜 女 20 生物 植物學 
a){學號}
b){學號、姓名}
c){年齡、系別}
d){姓名、性別}
e){姓名、專業}
候選鍵要求是不能包含多餘屬性的超鍵,那么很明顯,a選項不包含了多餘欄位屬性,能夠唯一標識元組。那么這題答案應該選擇a,那么其他的4個選項都不能作為候選鍵。

相關詞條

熱門詞條

聯絡我們