我有這個問題
考慮以下關系 R(A,B,C,D,E,G) 和函式依賴集
F = { A → BCD BC → DE B → D D → A}使用阿姆斯壯公理證明 AG 是超鍵。
在 FD 集合中沒有與 G 相關的屬性。那么,是否有可能通過與 G 相關的那些函式依賴來推匯出任何東西?如果是,我怎么能推匯出來?
uj5u.com熱心網友回復:
要檢查一組屬性是否是超鍵,我們應該查看是否可以從這些屬性中推匯出(通過阿姆斯壯公理)關系的所有屬性。
所以,假設 F 是 R 的函式依賴的覆寫,如果我們可以推匯出 AG → ABCDEG,我們可以檢查 AG 是一個超鍵。讓我們繼續執行以下步驟:
1. A → BCD (given)
2. BC → DE (given)
3. BCD → BC (by reflexivity)
4. A → BC (by transitivity from 1 and 3)
5. A → DE (by transitivity from 4 and 2)
6. A → BCDE (by union with 1 and 5)
7. A → ABCDE (by augmentation with A from 6)
8. AG → ABCDEG (by augmentation with G from 7)
最后要注意的是,在 F 的覆寫的某些依賴項的右側部分中不存在的每個屬性必須存在于任何候選鍵中(否則它可能不會由其他屬性派生)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/361374.html
