設f為r關係模式上的函式依賴集,被f所邏輯蘊含的全體構成的集合,稱為f的閉包,記作f⁺
先來看乙個例子。
關係r(a,b,c)滿足下列函式依賴f(a → b,a→c,b→ac),求a的閉包
通俗的來講,就是a能直接或者間接推出的屬性的集合
a → b, a→c, a→bc, a→φ, a→a
空集可以省略不寫,因此,a的閉包為abc,同時a也為r上的候選鍵(原因是什麼我們後面再講)
如果換一下求b的閉包,知道了原理,那也非常容易了
b→ac, b→a, b→c, b→b, b→φ
因此,b的閉包也是abc,b也為r上的候選鍵
求c的閉包呢?
c→φ, c→c
因此c的閉包就是c
若k為r< u,f>上的乙個屬性集,如果u完全依賴於k,則稱k為r上的候選鍵。
簡單的來說,如果k的閉包為u的話,那麼k就為r上的候選鍵
比如上面的r(a, b, c),a的閉包為abc,那麼a就為r上的候選鍵,同理,b的閉包也為abc,則b也為r上的候選鍵,c的閉包為c,因此,c不是r上的候選鍵。
資料庫學習筆記 求閉包和候選碼
例1 設有關係模式r a,b,c,d,e f 求 ab 求解方法 解 第一次 第二次 第三次 第四次 ab abcde 對於給定的關係r a1,a2,an 和函式依賴集f,可將其屬性分為4類 例2 設有關係模式cthrsg c,t,h,r,s,g 滿足下列函式依賴 c t 每門課程僅有一位教師講授 ...
資料庫閉包和候選碼求解方法
閉包概念 以下是寫的比較科學規範的閉包求解方法,設x和y均為關係r的屬性集的子集,f是r上的函式依賴集,若對r的任一屬性集b,一旦x b,必有b y,且對r的任一滿足以上條件的屬性集y1 必有y y1,此時稱y為屬性集x在函式依賴集f下的閉包,記作x 計算關係r的屬性集x的閉包的步驟如下 第一步 設...
資料庫閉包和候選碼求解方法
閉包概念 以下是寫的比較科學規範的閉包求解方法,設x和y均為關係r的屬性集的子集,f是r上的函式依賴集,若對r的任一屬性集b,一旦x b,必有b y,且對r的任一滿足以上條件的屬性集y1 必有y y1,此時稱y為屬性集x在函式依賴集f下的閉包,記作x 計算關係r的屬性集x的閉包的步驟如下 第一步 設...