2008年下半年的軟件資格(水平)考試因試卷“丟失門”而推遲一個(gè)多月開考,真可謂是一波三折,有人歡喜有人憂。各大小論壇空前火爆,言論自由到窮盡,觀點(diǎn)鮮明到無極,……出于好奇,我每天都在關(guān)注;可沒過幾天,再去論壇瞅瞅,里面一片死寂,比往日的寧?kù)o還恢復(fù)得過了頭,找不到一聲鳥鳴,讓我都有點(diǎn)不安了。難道,大家都準(zhǔn)備好拿證了?或都放棄考試了?或被這次突發(fā)事件暈了頭,忘記了?不管是哪種情況,面對(duì)這種休克,我來給要參考的朋友們擂幾鼓,醒一醒,提提神!
1.關(guān)系模式、函數(shù)依賴、范式
有關(guān)系模式R(A,B,C,D),函數(shù)依賴集F{A->B, B->C, C->D, D->A},請(qǐng)問這個(gè)關(guān)系模式最高能達(dá)到第幾范式?
大家曉得1NF、2NF、3NF、BCNF,部分依賴,傳遞依賴,那是可以用耳熟能詳來形容,但這個(gè)題你未必能答對(duì)或者疑慮重重。
首先,我來明確什么是主屬性,任何一個(gè)候選碼中的任一屬性都是主屬性。根據(jù)函數(shù)依賴集F{A->B, B->C, C->D, D->A},顯然我們能得出任何一個(gè)屬性都能推導(dǎo)出整個(gè)屬性組,因此A是候選碼,B是候選碼,C是候選碼,D也是候選碼。這樣,A、B、C、D都是主屬性。
根據(jù)3NF的定義我們知道,這個(gè)關(guān)系模式至少是3NF,因?yàn)樗鼪]有非主屬性,何談是否存在非主屬性對(duì)碼的傳遞依賴,當(dāng)然也不用談非主屬性對(duì)碼的部分依賴。
我們知道,在3NF的基礎(chǔ)上消除主屬性對(duì)碼(注意,這里指所有的候選碼)的部分依賴和傳遞依賴就能成為BCNF,那么該關(guān)系模式是否存在主屬性傳遞依賴于碼呢?(對(duì)于該關(guān)系模式肯定不存在主屬性對(duì)碼的部分依賴,因?yàn)樗械拇a都是單個(gè)屬性)有!而且是太多了,隨便舉一個(gè)A->B, B->C ,所以有A->B->C,有傳遞依賴A->C。問題就出在這個(gè)傳遞依賴上!
相關(guān)推薦:2008下半年軟件水平考試軟件設(shè)計(jì)師押題試卷
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |