關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)理論課件_第1頁(yè)
關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)理論課件_第2頁(yè)
關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)理論課件_第3頁(yè)
關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)理論課件_第4頁(yè)
關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)理論課件_第5頁(yè)
已閱讀5頁(yè),還剩52頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

關(guān)係資料庫(kù)設(shè)計(jì)理論

2025-5-172§4.1規(guī)範(fàn)化問(wèn)題

4.1.1

討論範(fàn)圍

關(guān)係資料庫(kù)設(shè)計(jì)理論主要包括3方面的內(nèi)容:數(shù)據(jù)依賴,範(fàn)式(normalforom),模式設(shè)計(jì)方法。數(shù)據(jù)依賴在此起著核心作用。我們重點(diǎn)討論函數(shù)依賴的概念,然後再介紹模式分解的標(biāo)準(zhǔn),即範(fàn)式,為數(shù)據(jù)庫(kù)的設(shè)計(jì)準(zhǔn)備一定的基本理論基礎(chǔ)。2025-5-1734.1.2存儲(chǔ)異常問(wèn)題

首先通過(guò)例子看一看某些不恰當(dāng)?shù)年P(guān)係模式可能導(dǎo)致的問(wèn)題。例如,有教師任課模式TDC:TDC(T#,TNAME,TUITLE,ADDR,D#,DNAME,LOC,C#,CNAME,LEVEL,CREDIT)其中各屬性分別表示教師號(hào)、教師姓名、職稱、教師地址、系、系名稱、系地址、課程號(hào)碼、課程名、教學(xué)水準(zhǔn)、學(xué)分。2025-5-174該關(guān)係在使用過(guò)程中存在下麵幾個(gè)問(wèn)題:

1.數(shù)據(jù)冗餘每當(dāng)教師開(kāi)設(shè)一門(mén)課程時(shí),該教師的職稱、地址等資訊就重複存儲(chǔ)一次。一般每位教師都開(kāi)設(shè)幾門(mén)課,數(shù)據(jù)冗餘不可避免。一個(gè)系有很多教師,使關(guān)係中的數(shù)據(jù)冗餘度很大。2.更新異常由於數(shù)據(jù)的重複存儲(chǔ),會(huì)給更新帶來(lái)麻煩。如果一位任3門(mén)課的教師改變了地址,3個(gè)元組的地址都要更新,一旦一個(gè)元組的地址未修改就會(huì)導(dǎo)致數(shù)據(jù)不一致。如果某個(gè)系改變辦公地址,所要修改的數(shù)據(jù)量會(huì)更大。2025-5-1753.插入異常如果學(xué)校新掉入一個(gè)教師,暫時(shí)未主講任何課程。由於缺少關(guān)鍵字的一部分,而關(guān)鍵字不允許出現(xiàn)空值,新教師就不能插入到此關(guān)係中去。只有當(dāng)他開(kāi)設(shè)了課程之後才能插入,這是不合理的。4.刪除異常與插入異常相反,如果某些教師致力於科研不擔(dān)任教學(xué)任務(wù)了,就要從當(dāng)前資料庫(kù)中刪除有關(guān)記錄。那麼關(guān)於這些教師的其他資訊將無(wú)法記載,這也是極不合理的。上述在插入、刪除或修改元組時(shí)產(chǎn)生的不希望發(fā)生的異常情況是由於關(guān)係模式設(shè)計(jì)的不好造成的。如果用下麵4個(gè)關(guān)係模式代替原來(lái)的一個(gè)關(guān)係模式,上述4個(gè)方面的問(wèn)題就基本解決了。2025-5-176§4.2函數(shù)依賴

4.2.1屬性間的聯(lián)繫1.一對(duì)一聯(lián)繫在讀者關(guān)係中,借書(shū)證號(hào)是唯一的,如果讀者沒(méi)有重名的,姓名與借書(shū)證號(hào)兩個(gè)屬性之間是1:1聯(lián)繫。姓名可以確定借書(shū)證號(hào),借書(shū)證號(hào)也可以確定姓名。設(shè)X、Y為關(guān)係中的屬性或?qū)傩越M,它們的所有可能取值組成兩個(gè)集合。為簡(jiǎn)便起見(jiàn),也叫X、Y,如果對(duì)於X中的任一具體值,中至多有一個(gè)Y值與之相對(duì)應(yīng),並且對(duì)於Y中的任一具體值,中至多有一個(gè)X值與之對(duì)應(yīng),稱X、Y兩個(gè)屬性之間是一對(duì)一的關(guān)係。

2025-5-1772.一對(duì)多聯(lián)繫在讀者關(guān)係中,一本書(shū)有若干副本,它們有相同的書(shū)名、作者、分類號(hào)等,但每本書(shū)有唯一的編號(hào)。如果屬性值集合X中的任一具體值,至多與Y中的一個(gè)值相對(duì)應(yīng),而Y中的任一具體值卻可以和X中的多個(gè)值相對(duì)應(yīng),則稱兩個(gè)屬性間從X到Y(jié)為m:1的聯(lián)繫?;驈腨到X是1:m的聯(lián)繫。應(yīng)當(dāng)注意,這裏指的是屬性值個(gè)數(shù)的多少,而不是具有相同屬性值的有多少個(gè)元組,二者正好相反。書(shū)名與總編號(hào)之間是1:m,即使一個(gè)書(shū)名與多個(gè)總編號(hào)與之對(duì)應(yīng)。

2025-5-1783.多對(duì)多聯(lián)繫在借閱關(guān)係中,一個(gè)讀者可以借多本書(shū),即同一個(gè)借書(shū)證號(hào)有若干個(gè)圖書(shū)總編號(hào)與之對(duì)應(yīng)。由總編號(hào)標(biāo)識(shí)的一本書(shū)在不同日期可以被不同的讀者借閱。在選修關(guān)係中一個(gè)學(xué)生可以選修幾門(mén)課,同一門(mén)課有多個(gè)學(xué)生同時(shí)選修。在X、Y兩個(gè)屬性值集中,如果任一值都可以至多和另一個(gè)屬性值集中多個(gè)值對(duì)應(yīng),反之亦然,則稱屬性X和Y是m:n關(guān)係。顯然,3類聯(lián)繫之間存在著包含關(guān)係,1:1是1:m的特例;1:m又m:n是的特例。關(guān)係中屬性值之間這種互相依賴又互相制約的聯(lián)繫為數(shù)據(jù)依賴。數(shù)據(jù)依賴主要有兩種:函數(shù)依賴和多值依賴。

2025-5-1794.2.2函數(shù)依賴

1.函數(shù)依賴的概念定義4.1

用U表示屬性集的全集{A1,A2,……,An},設(shè)R(U)是屬性集U上的關(guān)係模式。X、Y是U的子集。若對(duì)於R(U)的所有具體關(guān)係r都滿足如下約束:對(duì)於X的每一個(gè)具體值,Y有唯一的具體值與之對(duì)應(yīng),則稱Y函數(shù)依賴於X,或X函數(shù)決定Y,記作X→Y,X稱作決定因素。如果X→Y,並且Y不是X的子集,則稱是非平凡的函數(shù)依賴。全體總是能夠決定部分的,若Y是X的子集,則稱是平凡的函數(shù)依賴。2025-5-1710

例1:有關(guān)系(職工號(hào),基本功子,獎(jiǎng)金),一個(gè)職工號(hào)唯一確定一個(gè)基本工資數(shù)額或一個(gè)獎(jiǎng)金額,即一個(gè)人不能拿兩種工資或獎(jiǎng)金,但幾個(gè)人的工資可能相同。設(shè)屬性A是職工號(hào),屬性B是基本工資,屬性C是獎(jiǎng)金,可以看出,每個(gè)A的值對(duì)應(yīng)一個(gè)B的值和一個(gè)C的值。因此屬性B和C都函數(shù)依賴於屬性A。但反過(guò)來(lái)則不存在這種聯(lián)繫,如基本工資390.00對(duì)應(yīng)兩個(gè)職工號(hào)051和054。用符號(hào)表示為:A→B,A→C,C→A,B→C。

定義中所謂“對(duì)應(yīng)唯一的具體值是什麼,而不是說(shuō)該值不能與其他值相等。FD的確切語(yǔ)義表示了關(guān)係模式中屬性集的X值與Y的值之間的多對(duì)一聯(lián)繫。從數(shù)值上看,“多方”函數(shù)決定“一方”。例如,在圖書(shū)關(guān)係中,

總編號(hào)(分類號(hào),書(shū)名,作者,出版社)2025-5-1711根據(jù)函數(shù)依賴的定義,可以找出下麵規(guī)律:(1)在一個(gè)關(guān)係模式中,如果屬性XY是有1:1聯(lián)繫,則存在函數(shù)依賴Y→X、Y→X??捎涀鱔

Y。(2)如果屬性X→Y是1:m的聯(lián)繫,則存在函數(shù)依賴Y→X,但X→Y。(3)如果屬性X→Y是

n:m的聯(lián)繫,則X與Y之間不存在任何函數(shù)依賴。

必須注意,函數(shù)依賴是指關(guān)係R模式的所有關(guān)係元組均應(yīng)滿足的約束條件,而不是指關(guān)係模式R的某個(gè)或某些元組的約束條件。當(dāng)關(guān)係中的元組增加或者更新後都不能破壞函數(shù)依賴。因此,必須根據(jù)語(yǔ)義來(lái)數(shù)據(jù)之間的函數(shù)依賴,而不能單憑某一時(shí)刻關(guān)係中的實(shí)際數(shù)據(jù)來(lái)判段。

2025-5-17122.完全函數(shù)依賴定義4.2

設(shè)X→Y是關(guān)係模式R(U)的一個(gè)函數(shù)依賴,如果不存在X的真子集X’,使得X’→Y成立,則稱Y完全函數(shù)依賴於X,記作X→Y(f)。部分函數(shù)依賴:設(shè)XY是關(guān)係模式R(U)的一個(gè)函數(shù)依賴,如果存在X的真子集X’,使得X’→Y成立,則稱Y部分依賴於X,記作X→Y(p)。

由定義可知,當(dāng)X是單個(gè)屬性時(shí),由於X不存在任何真子集,如果X→Y,則X→Y(f)。

2025-5-1713例2:設(shè)有關(guān)係模式選課SCI(S#,C#,GRADE,CREDIT)

其中S#表示學(xué)號(hào),C#表示課程號(hào),GRADE表示成績(jī),CREDIT表示學(xué)分。在這個(gè)選課關(guān)係模式中,由於一個(gè)學(xué)生可以選修多們課程,一門(mén)課程可有多個(gè)學(xué)生選修,因此S#或C#都不能單獨(dú)確定GRADE。成績(jī)只能由屬性組合(S#,C#)來(lái)確定。課程學(xué)分CREDIT是C#決定的,C#CREDIT。由此可知:(S#,C#)→GRADE(S#,C#)→CREDIT2025-5-17143.傳遞依賴定義4.3

在同一關(guān)係模式R(U)中,如果存在非平凡函數(shù)依賴X→Y,Y→Z,而Y→\X,則稱Z傳遞依賴X。定義的條件X→Y,並強(qiáng)調(diào)Y→\X十分必要。如果X→Y互相依賴,並非傳遞依賴。2025-5-1715例3:設(shè)關(guān)係模式S1(S#,SNAME,D#,DNAME,LOCATION)各屬性分別代表學(xué)號(hào),姓名,所在系,系地址。存在函數(shù)依賴:S#→D#,但D#→\S#,D#,LOCTION根據(jù)傳遞依賴的定義,可知S#,LOCATION是傳遞依賴。實(shí)際上,部分依賴必然是傳遞依賴。在例2SCI(S#,C#,GRADE,CREDIT)中,(S#,C#)C#,C#(S#,C#),C#CREDIT,形成傳遞依賴(S#,C#)CREDIT。2025-5-1716相關(guān)英文講解:Normalization:Atechniqueforproducingasetofrelationswithdesirableproperties,giventhedatarequirementsofanenterprise.Normalizationisaformalmethodthatcanbeusedtoidentifyrelationsbasedontheirkeysandthefunctionaldependenciesamongtheirattributes.DataRedundancyandUpdateAnomalies(InsertionAnomalies,DeletionAnomaliesandModificationAnomalies)2025-5-1717Functionaldependency:Describestherelationshipbetweenattributesinarelation.Forexample,ifAandBareattributesofrelationR,BisfunctionallydependentonA(denotedA->B),ifeachvalueofAisassociatedwithexactlyonevalueofB.(AandBmayeachconsistofoneormoreattributes.)FullFunctionalDependencyIndicatesthatifAandBareattributesofarelation,BisfullyfunctionallydependentonAifBisfunctionallydependentonA,butnotonanypropersubsetofA.2025-5-1718PartiallyDependent:ifthereissomeattributethatcanberemovedfromAandthedependencystillholds.TransitiveDependencyAconditionwhereA,B,andCareattributesofarelationsuchthatifA->BandB->C,thenCistransitivelydependentonAviaB(providedthatAisnotfunctionaldependentonBorC).2025-5-17194.2.3關(guān)鍵字1.候選關(guān)鍵字定義4.4在關(guān)係模式R(U)中,K是U中的屬性或?qū)傩越M。如果K→U(f),則稱K為關(guān)係R(U)的一個(gè)候選關(guān)鍵字。主關(guān)鍵字:R(U)中若有一個(gè)以上的候選關(guān)鍵字,則選定其中一個(gè)作為主關(guān)鍵字。主屬性:包含在任意一個(gè)候選關(guān)鍵字中的屬性。非主屬性:不包含在任意一個(gè)候選關(guān)鍵字中的屬性。全關(guān)鍵字:在極端的情況下,關(guān)係模式的整個(gè)屬性組U作為關(guān)鍵字,稱為全關(guān)鍵字。此時(shí),關(guān)係中沒(méi)有非主屬性。2025-5-1720候選關(guān)鍵字具有兩個(gè)性質(zhì):(1)標(biāo)示的唯一性:對(duì)於R(U)中的每一個(gè)元組,K的值確定後,該元組就相應(yīng)確定了。(2)無(wú)冗餘性:當(dāng)K是屬性組的情況下,K的任何一部分都不能唯一標(biāo)示該元組。這是定義中的完全函數(shù)依賴的意義。例如,SC(S#,C#,GRADE,CREDIT)中,屬性組(S#,C#)是主關(guān)鍵字,也是主關(guān)鍵字。S#,C#是主屬性。GRADE,CREDIT是非屬性。

2025-5-17212.外關(guān)鍵字定義4.5在關(guān)係模式R(U)中,若屬性或?qū)傩越MX不是關(guān)係R的關(guān)鍵字,但X是其他關(guān)係模式的關(guān)鍵字,則稱X為關(guān)係R(U)的外關(guān)鍵字。主關(guān)鍵字和外關(guān)鍵字是表示關(guān)係之間聯(lián)繫的手段。例如,在借書(shū)數(shù)據(jù)中,借書(shū)證號(hào)和總編號(hào)是讀者關(guān)係,圖書(shū)關(guān)係的主關(guān)鍵字,夠成借閱關(guān)係的外關(guān)鍵字。2025-5-1722又如,在選課關(guān)係資料庫(kù)中,3個(gè)關(guān)係模式:

S(S#,SNAME,SEX,ADDRESS)

C(C#,CNAME,CREDIT)

SC(S#,C#,GRADE)學(xué)生和課程存在的多對(duì)多的聯(lián)繫由選修關(guān)係反映出來(lái),3個(gè)關(guān)係間的關(guān)聯(lián)是通過(guò)關(guān)係SC的外關(guān)鍵字S#、C#實(shí)現(xiàn)的。2025-5-1723相關(guān)英文講解:Candidatekey:Theminimalsetofattributesthatuniquelyidentifieseachoccurrenceofanentitytype.Primarykey:Thecandidatekeythatisselectedtouniquelyidentifyeachoccurrenceofanentitytype.Compositekey:Acandidatekeythatconsistsoftwoormoreattributes.2025-5-1724Thecandidatekey(s)forarelation,wemustidentifytheattribute(orgroupofattributes)thatuniquelyidentifieseachtupleinthisrelation.Ifarelationhasmorethanonecandidatekey,weidentifythecandidatekeythatistoactastheprimarykeyfortherelation.2025-5-17254.2.4函數(shù)依賴公理數(shù)據(jù)依賴的公理系統(tǒng)是模式分解演算法的理論基礎(chǔ),下麵首先討論函數(shù)依賴的一個(gè)有效而完備的公理系統(tǒng)——Armstrong公理系統(tǒng)。設(shè)U為屬性總體,F(xiàn)是U上的一組函數(shù)依賴,有關(guān)系模式R(U,F(xiàn))。定義4.6

對(duì)於滿足一組函數(shù)依賴F的關(guān)係模式R(U,F),其中任何一個(gè)關(guān)係r,如果函數(shù)依賴X→Y都成立,則稱為F邏輯蘊(yùn)含X→Y。2025-5-1726為了求得給定關(guān)係模式的關(guān)鍵字,為了從一組函數(shù)依賴求得蘊(yùn)含的函數(shù)依賴,例如已知函數(shù)依賴集F,要問(wèn)X→Y是否為F所蘊(yùn)含,就需要一套推理規(guī)則,這組推理規(guī)則是l974年首先由Armstrong提出來(lái)的。

Armstrong公理系統(tǒng):設(shè)U為屬性集總體,F(xiàn)是U上的一組函數(shù)依賴,於是有關(guān)系模式R(U,F(xiàn))。

2025-5-1727對(duì)R(U,F(xiàn))來(lái)說(shuō)有以下的推理規(guī)則:(1)自反律(Reflexivity):若Y

X

U,則X→Y為F所蘊(yùn)含。(2)增廣律(Augmentation):若X→Y為F所蘊(yùn)含,且Z

U,則XZ→YZ為F所蘊(yùn)含

。(3)傳遞律(Transitivity):若X→Y及Y→Z為F所蘊(yùn)含,則X→Z為F所蘊(yùn)含。注意:由自反律所得到的函數(shù)依賴均是平凡的函數(shù)依賴,自反律的使用並不依賴於F。

2025-5-1728根據(jù)上述3條Armstrong公理,可以得到下列規(guī)則:(4)合併規(guī)則(Union):如果X→Y,X→Z,則有X→YZ。(5)偽傳遞規(guī)則:如果X→Y,WY→Z,則有WX→Z。(6)分解規(guī)則(Decomposition):如果X→Y,Z

Y,則有X→Z。

根據(jù)合併規(guī)則和分解規(guī)則,很容易得到以下事實(shí):X→A1,A2,…,An

成立的充分必要條件是成立X→Ai(i=1,2,…,n)成立。2025-5-1729相關(guān)英文講解:InferenceRulesforFunctionalDependencies(1)Reflexivity:IfBisasubsetofA,thenA→B(2)Augmentation:IfA→B,thenA,C→B,C(3)Transitivity:IfA→BandB→CthenA→C(4)Self-determination:A→A(5)Decomposition:IfA→B,C,thenA→BandA→C(6)Union:IfA→BandA→C,thenA→B,C(7)Composition:IfA→BandC→DthenA,C→B,D2025-5-1730§4.3關(guān)係範(fàn)式4.3.1第一範(fàn)式(1NF)定義4.7在關(guān)係模式R中的每一個(gè)具體關(guān)係r中,如果每一個(gè)屬性值都是不可再分的最小數(shù)據(jù)單位,則稱R是第一範(fàn)式1NF的關(guān)係。記為R∈1NF。元組中每一分量必須是不可分割的資料項(xiàng)目,即在同一表中沒(méi)有重複項(xiàng)存在。2025-5-17314.3.2第二範(fàn)式(2NF)定義4.8

如果關(guān)係模式R(U,F)中的所有非主屬性都完全函數(shù)依賴於任一候選關(guān)鍵字,則稱關(guān)係R是第二範(fàn)式(2NF)的。記為R∈2NF。第二範(fàn)式(2NF)滿足1NF且所有非主屬性都依賴於主關(guān)鍵字。

2025-5-17324.3.3第三範(fàn)式定義4.9如果關(guān)係模式R(U,F)中的所有非主屬性對(duì)任何候選關(guān)鍵字都不存在傳遞依賴,則稱關(guān)係R是第三範(fàn)式(3NF)的。記為R∈3NF。第三範(fàn)式(3NF)滿足2NF且任何一個(gè)非主屬性都不傳遞依賴於任何主關(guān)鍵字。如表4-8張宏開(kāi)設(shè)了3門(mén)課程,上面出現(xiàn)了3個(gè)元組,教師地址重複了3次。傳遞依賴關(guān)係存在著冗餘和異常更新問(wèn)題。

2025-5-17334.3.4BCNF部分函數(shù)依賴和傳遞函數(shù)依賴是產(chǎn)生存儲(chǔ)異常的兩個(gè)重要原因,3NF消除了大部分存儲(chǔ)異常,具有較好的性能。但3NF並沒(méi)有要求消除主屬性對(duì)後選關(guān)鍵字的傳遞依賴,如果存在這種情況,3NF模式仍然可能發(fā)生存儲(chǔ)異?,F(xiàn)象。2025-5-1734例如,每門(mén)課有幾個(gè)教師講,但每個(gè)教師只教一門(mén)課;每個(gè)學(xué)生可選幾門(mén)課??傻贸龅暮瘮?shù)依賴:(S#,CNAME)→TNAME(S#,TNAME)→CNAMETNAME→CNAME關(guān)鍵字:(S#,CNAME)或(S#,TNAME)∵在EN中所有屬性都是主屬性∴EN∈3NF2025-5-1735存在異常:如果設(shè)置了課程,並確定了教師,但還沒(méi)有學(xué)生選修,則教師與課程資訊就不能加入。若一個(gè)學(xué)生畢業(yè)或中止學(xué)業(yè),刪除學(xué)生時(shí),連教師和課程也刪了。定義4.10

如果關(guān)係模式R(U,F)的所有屬性都不傳遞依賴於R的任何候選關(guān)鍵字,那麼稱關(guān)係R是屬於BCNF的。記為R∈BCNF。關(guān)係模式R,如果每個(gè)決定因素都包含關(guān)鍵字(而不是被關(guān)鍵字所包含),則R是BCNF的關(guān)係模式。

2025-5-1736那麼,上例的分解方法是對(duì)於不是BCNF的關(guān)係模式R,若在R中有Y

R,且Y

A,A

Y,Y不是R的關(guān)鍵字,則可分解為R1=R-A和R2=YA。EN分解為:CLASS(S#,TNAME)∈BCNFTEACH(TNAME,CNAME)∈BCNF規(guī)範(fàn)化過(guò)程關(guān)係模式分解的無(wú)損聯(lián)接性:分解後的兩個(gè)關(guān)係可以通過(guò)自然聯(lián)接恢復(fù)原來(lái)的關(guān)係。這種分解具有無(wú)損聯(lián)接性。判斷無(wú)損分解的法則,即無(wú)損分解的充分必要條件是:R1∩R2→R1-R2或R1∩R2→R2-R12025-5-1737相關(guān)英文講解:Unnormalizedform(UNF)Atablethatcontainsoneormorerepeatinggroups.FromUNFto1NF,therearetwocommonapproachestoremovingrepeatinggroupsfromunnormalizedtables:1.removetherepeatinggroupsbyenteringappropriatedataintheemptycolumnsofrowscontainingtherepeatingdata.Inotherword,wefillintheblanksbyduplicatingthenonrepeatingdata,whererequired.Thisapproachiscommonlyreferredtoas‘flattening’thetable.2025-5-17382.removetherepeatinggroupbyplacingtherepeatingdata,alongwithacopyoftheoriginalkeyattribute(s),inaseparaterelation.Aprimarykeyisidentifiedforthenewrelation.Sometimestheunnormalizedtablemaycontainmorethanonerepeatinggroup,orrepeatinggroupswithinrepeatinggroups.Insuchcases,thisapproachisappliedrepeatedlyuntilnorepeatinggroupsremain.2025-5-1739Asetofrelationsisin1NFiftheycontainnorepeatinggroups.FirstNormalForm(1NF)Arelationinwhichtheintersectionofeachrowandcolumncontainsoneandonlyonevalue.Thenormalizationof1NFrelationsto2NFinvolvestheremovalofpartialdependencies.Ifapartialdependencyexists,weremovethefunctionallydependentattributesfromtherelationbyplacingtheminanewrelationalongwithacopyoftheirdeterminant.2025-5-1740SecondNormalForm(2NF)Arelationthatisinfirstnormalformandeverynon-primary-keyattributeisfullyfunctionallydependentontheprimarykey.OrArelationthatisinfirstnormalformandeverynon-primary-keyattributeisfullyfunctionaldependentonanycandidatekey.Arelationwithasingleattributeprimarykeyisautomaticallyinatleast2NF.2025-5-1741Thenormalizationof2NFrelationsto3NFinvolvestheremovaloftransitivedependencies.Ifatransitivedependencyexists,weremovethetransitivelydependentattributesfromtherelationbyplacingtheminanewrelationalongwithacopyoftheirdeterminant.ThirdNormalForm(3NF)Arelationthatisinfirstandsecondnormalform,andinwhichnonon-primary-keyattributeistransitivelydependentontheprimarykey.Or2025-5-1742Thenormalizationof2NFrelationsto3NFinvolvestheremovaloftransitivedependencies.Ifatransitivedependencyexists,weremovethetransitivelydependentattributesfromtherelationbyplacingtheminanewrelationalongwithacopyoftheirdeterminant.ThirdNormalForm(3NF)Arelationthatisinfirstandsecondnormalform,andinwhichnonon-primary-keyattributeistransitivelydependentontheprimarykey.Or2025-5-1743Thedifferencebetween3NFandBCNFisthatforafunctionaldependencyA->B,3NFallowsthisdependencyinarelationifBisaprimary-keyattributeandAisnotacandidatekey,whereasBCNFinsiststhatforthisdependencytoremaininarelation,Amustbeacandidatekey.ThepotentialtoviolateBCNFmayoccurinarelationthat:Containstwo(ormore)compositecandidatekeysThecandidatekeysoverlap,thatishaveatleastoneattributeincommon2025-5-17444.3.5規(guī)範(fàn)化小結(jié)在關(guān)係資料庫(kù)中,對(duì)關(guān)係模式的基本要求是滿足第一範(fàn)式。這樣的關(guān)係模式就是合法的、允許的。但是,人們發(fā)現(xiàn)有些關(guān)係模式存在插入、刪除異常、修改複雜,數(shù)據(jù)冗餘等毛病。人們尋求解決這些問(wèn)題的方法,這就是規(guī)範(fàn)化的目的。規(guī)範(fàn)化的基本思想是逐步消除數(shù)據(jù)依賴中不合適的部分,使模式中的各關(guān)係模式達(dá)到某種程度的“分離”,即“一事一地”的模式設(shè)計(jì)原則。讓一個(gè)關(guān)係描述一個(gè)概念、一個(gè)實(shí)體或者實(shí)體間的一種聯(lián)繫。若多於一個(gè)概念就把它“分離”出去。因此所謂規(guī)範(fàn)化實(shí)質(zhì)上是概念的單一化。2025-5-1745例教師任課關(guān)係模式TDC(T#,TNAME,TITLE,ADDR,D#,DNAME,LOC,C#,CNAME,LEVEL,CREDIT)第一步:確定函數(shù)依賴T#→(TNAME,TITLE,ADDR,D#,DNAME,LOC)D#→(DNAME,LOC)C#→(CNAME,CREDIT)(T#,C#)→LEVEL2025-5-1746第二步:確定候選關(guān)鍵字∵(T#,C#)→U∴(T#,C#)為候選關(guān)鍵字第三步:確定主屬性和非主屬性主屬性:T#,C#非主屬性:TNAME,TITLE,ADDR,D#,DNAME,LOC,CNAME,CREDIT,LEVEL2025-5-1747第四步:判定是否為第二範(fàn)式,若不是則分解為第二範(fàn)式∵T#→(TNAME,TITLE,ADDR,D#,DNAME,LOC)C#→(CNAME,CREDIT)∴TDC∈2NF分解為:TD(T#,TNAME,ADDR,D#,DNAME,LOC)C(C#,CNAME,CREDIT)TC(T#,C#,LEVEL)2025-5-1748第五步:判定是否為第三範(fàn)式,若不是則分解為第三範(fàn)式經(jīng)判斷C∈3NF,TC∈3NF∵T#→D#,D#→(DNAME,LOC),且D#→T#∴TD∈3NF分解為:D(D#,DNAME,LOC)T(T#,TNAME,ADDR,D#)2025-5-1749第六步:判定是否為BCNF,若不是則分解為BCNF經(jīng)判斷:T(T#,TNAME,ADDR,D#)∈BCNFD(D#,DNAME,LOC)∈BCNFC(C#,CNAME,CREDIT)∈BCNFTC(T#,C#,LEVEL)∈BCNFTDC分解為以上四個(gè)關(guān)係模式2025-5-1750在這4個(gè)關(guān)係模式組成的關(guān)係模式中消除了傳遞依賴,達(dá)到瞭解3NF。在任一個(gè)模式中,每個(gè)決定因素都是關(guān)鍵字,由此也同時(shí)滿足了BNCF的要求。各範(fàn)式級(jí)別是在分析函數(shù)依賴條件下

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論