A,D->A,A->E,AC->B},其屬性AD的閉包為_(kāi)_____.解:設(shè)X(0)=AD,計(jì)算X">
候選碼的求解理論和算法

候選碼的求解理論和算法

ID:47472677

大?。?3.50 KB

頁(yè)數(shù):4頁(yè)

時(shí)間:2020-01-11

候選碼的求解理論和算法_第1頁(yè)
候選碼的求解理論和算法_第2頁(yè)
候選碼的求解理論和算法_第3頁(yè)
候選碼的求解理論和算法_第4頁(yè)
資源描述:

《候選碼的求解理論和算法》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)

1、求關(guān)系模式中的候選鍵,是軟考中的考點(diǎn),但視頻中沒(méi)有講,所以值得一提。?求閉包給定關(guān)系模式R(U,F(xiàn)),U={A,B,C,D,E},F(xiàn)={B->A,D->A,A->E,AC->B},其屬性AD的閉包為_(kāi)_____.解:設(shè)X(0)=AD,計(jì)算X(1):逐一掃描F集中的各個(gè)函數(shù)依賴,找左部是A、D、AD的函數(shù)依賴,得到AE。于是X(1)=X(0)∪EA=ADE。由于X(0)!=X(1),所以繼續(xù)掃描,于是X(2)=X(1)∪EA=ADE。由于X(2)=X(1),所以算法到此為止,屬性AD的閉包為X(2),即ADE。?首先來(lái)看候選鍵的定義:若關(guān)系中

2、的某一屬性組的值能唯一地標(biāo)識(shí)一個(gè)元組,則稱該屬性組為候選鍵。若W是候選鍵,則必須滿足兩個(gè)條件:W的閉包是U;W沒(méi)有冗余。設(shè)關(guān)系模式R中U=ABC.......等N個(gè)屬性,U中的屬性在FD中有四種范圍:(1)左右出現(xiàn);(2)只在左部出現(xiàn);(3)只在右部出現(xiàn);(4)不在左右出現(xiàn);算法:按以下步驟求候選鍵:1.只在FD右部出現(xiàn)的屬性,不屬于候選碼;2.只在FD左部出現(xiàn)的屬性,一定存在于某候選碼當(dāng)中;3.外部屬性一定存在于任何候選碼當(dāng)中;4.其他屬性逐個(gè)與2,3的屬性組合,求屬性閉包,直至X的閉包等于U,若等于U,則X為候選碼。例1:R,

3、U=(A,B,C,D,E,G),F={AB-->C,CD-->E,E-->A.A-->G},求候選碼。??因G只在右邊出現(xiàn),所以G一定不屬于候選碼;而B(niǎo),D只在左邊出現(xiàn),所以B,D一定屬于候選碼;BD的閉包還是BD,則對(duì)BD進(jìn)行組合,除了G以外,BD可以跟A,C,E進(jìn)行組合??先看ABD??ABD本身自包ABD,而AB-->C,CD-->E,A-->G,所以ABD的閉包為ABDCEG=U?再看BDC??CD-->E,E-->A,A-->G,BDC本身自包,所以BDC的閉包為BDCEAG=U??最后看BDE??E-->A,A-->G,AB--

4、>C,BDE本身自包,所以BDE的閉包為BDEAGC=U??因?yàn)?ABD)、(BCD)、(BDE)的閉包都是ABCDEG所以本問(wèn)題的候選碼有3個(gè)分別是ABC、BCD和BDE?例2:R,U=(A,B,C),F={AB-->C,C-->B},求候選碼。因?yàn)锳只出現(xiàn)在左邊,所以A一定是候選鍵。A的閉包還是A,則對(duì)A進(jìn)行組合,可以和B,C進(jìn)行組合。首先看AB,AB本身自包AB,而AB-->C,所以AB的閉包是ABC=U。再看AC,AC本身自包AC,而C-->B,所以AC的閉包是ABC=U。因?yàn)锳B,AC的閉包都是ABC,也就是U,所以候選

5、鍵是AB,AC。?例(1);設(shè)有關(guān)系模式R(U,F(xiàn)),其中U={A,B,C,D,E,I},F(xiàn)={A→D,AB→E,BI→E,CD→I,E→C},計(jì)算(AE)+????解:?(1)?令X={AE},X(0)=AE??????(2)在F中尋找尚未使用過(guò)的左邊是AE的子集的函數(shù)依賴,結(jié)果是:?A→D,?E→C;所以?X(1)=X(0)DC=ACDE,?顯然?X(1)≠X(0).??????(3)?在F中尋找尚未使用過(guò)的左邊是ACDE的子集的函數(shù)依賴,?結(jié)果是:?CD→I;所以?X(2)=X(1)I=ACDEI。雖然X(2)≠X(1),但F中尋找尚

6、未使用過(guò)函數(shù)依賴的左邊已經(jīng)沒(méi)有X(2)的子集,所以不必再計(jì)算下去,即(AE)+=ACDEI?!  ≌f(shuō)白話一點(diǎn):閉包就是由一個(gè)屬性直接或間接推導(dǎo)出的所有屬性的集合。????例如:f={a->b,b->c,a->d,e->f};由a可直接得到b和d,間接得到c,則a的閉包就是{a,b,c,d}?候選碼的求解理論和算法  對(duì)于給定的關(guān)系R(A1,A2,…An)和函數(shù)依賴集F,可將其屬性分為4類:    L類??僅出現(xiàn)在函數(shù)依賴左部的屬性?!   ?類??僅出現(xiàn)在函數(shù)依賴右部的屬性?!   ?類??在函數(shù)依賴左右兩邊均未出現(xiàn)的屬性?!   R

7、類??在函數(shù)依賴左右兩邊均出現(xiàn)的屬性?! 《ɡ恚簩?duì)于給定的關(guān)系模式R及其函數(shù)依賴集F,若X(X∈R)是L類屬性,則X必是候選碼中的成員。  推論:對(duì)于給定的關(guān)系模式R及其函數(shù)依賴集F,若X(X∈R)是L類屬性,且X+包含了R的全部屬性;則X必為R的唯一候選碼。  例(2):設(shè)有關(guān)系模式R(A,B,C,D),其函數(shù)依賴集F={D→B,B?→D,AD?→B,AC?→D},求R的所有候選碼解:考察F發(fā)現(xiàn),A,C兩屬性是L類屬性,所以AC必是R的候選碼成員(A的閉包一定不是全集),又因?yàn)椋ˋC)+=ABCD,所以AC是R的唯一候選碼?! 《ɡ恚簩?duì)于

8、給定的關(guān)系模式R及其函數(shù)依賴集F,若X(X∈R)是R類屬性,則X元素一定不是候選碼中的?! ?duì)于LR類,求出其閉包,若包含所有屬性,則為候選鍵;若不包含,再和LR類中的其他屬性組

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。