資料庫 如何快速 準確選取候選碼(候選鍵)?

2021-10-05 12:57:12 字數 640 閱讀 2863

設有關係模式r,u= 為r的屬性集, f為r上的函式依賴集

- ①只在f右部出現的屬性,不屬於候選碼

- ②只在f左部出現的屬性,一定存在於某候選碼當中

- ③兩邊都沒有出現的屬性,一定存在於候選碼中

- ④其他屬性逐個與②③的屬性結合,求屬性閉包 ,直至x的閉包等於u。若等於u,則x為候選碼

例題:關係模式r,u= , f= , 求候選碼

解:①沒有只在f右部出現的屬性

②d為只在f左部出現的屬性,所以d一定在候選碼中

③沒有兩邊都沒有出現的屬性

④還有屬性abce待考慮,逐個結合,求閉包

ad的閉包是ad,不等於u

bd的閉包是bd,不等於u

cd的閉包是cd,不等於u

ed的閉包是ed,不等於u (1個與之結合沒找到候選碼,繼續兩個與之結合)

abd的閉包是 abcde,等於u √

acd的閉包是acd,不等於u

aed的閉包是aed,不等於u

bcd的閉包是bcd,不等於u

bed的閉包是bed,不等於u

ced的閉包是abcde,等於u √ (2個的結合找到了候選碼,就不需要3個的結合了哦~)

因此,候選碼是abd 和 ced。

資料庫中的超碼 候選碼 主碼

碼是資料系統中的基本概念。所謂碼就是能唯一標識實體的屬性,他是整個實體集的性質,而不是單個實體的性質。它包括超碼,候選碼,主碼。超碼是乙個或多個屬性的 集合,這些屬性可以讓我們在乙個實體集中唯一地標識乙個實體。如果k是乙個超碼,那麼k的任意超集也是超碼,也就是說如果k是超碼,那麼所有包含k的集合也是...

資料庫中 碼 候選碼 主碼 的區別

主碼 ps 元組理解為一張表的某一行,屬性理解為一張表的某一列,屬性名就是列的名字 字段 1 碼 碼是可以確定乙個元組的所有資訊的屬性名或屬性名組。例如在 中,假設知道 a 的值就能確定 a,b,c,d 的值,假設知道 c,d 的值就可以確定 a,b,c,d 的值,那麼 就是碼,就是碼。並且 等也都...

資料庫 碼 屬性 候選碼 主碼的關係

碼 唯一標識實體的屬性集稱為碼。例如學號是學生實體的碼 屬性實體所具有的某一特性稱為屬性 候選碼設k為r中的屬性或屬性組合,若k u,則k為r的候選碼 主碼若候選碼多於乙個,則選定其中乙個為主碼 1.碼和候選碼,屬性的區別 碼是唯一確定一條記錄的屬性或屬性集合,因此碼其實也就是候選碼的簡稱。但是碼一...