日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第六章关系数据理论

發布時間:2025/3/11 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第六章关系数据理论 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

第六章關系數據理論

  • 6.1_問題的提出(略)
  • 6.2_規范化
    • 6.2.1_函數依賴
    • 6.2.2_碼
    • 6.2.3_范式
    • 6.2.4_2NF
    • 6.2.5_3NF
    • 6.2.6_BCNF
    • 6.2.7_多值依賴
    • 6.2.8_4NF
    • 6.2.9_規范化小結
  • 6.3_Armstrong公理系統
    • 6.3.1_函數依賴閉包
    • 6.3.2_最小依賴集
    • 6.3.3_轉換為3NF的保持函數依賴的分解

6.1_問題的提出(略)

6.2_規范化

6.2.1_函數依賴

1.函數依賴
設R(U)是一個屬性集U上的關系模式,X和Y是U的子集。
若對于R(U)的任意一個可能的關系r,r中不可能存在兩個元組在X上的屬性值相等, 而在Y上的屬性值不等, 則稱 “X函數確定Y” 或 “Y函數依賴于X”,記作X→Y


2.平凡函數依賴與非平凡函數依賴

  • 非平凡的函數依賴:如果X→Y,但Y? X,則稱X→Y是非平凡的函數依賴
  • 平凡的函數依賴:若X→Y,但Y ? X, 則稱X→Y是平凡的函數依賴

3.完全函數依賴與部分函數依賴

  • 在R(U)中,如果X→Y,并且對于X的任何一個真子集X’,都有X’推不出Y, 則稱Y對X完全函數依賴,記作X -F-> Y(即缺了屬性集合X中的任何一個屬性都不能唯一確定Y)
  • 若X→Y,但Y不完全函數依賴于X,則稱Y對X部分函數依賴,記作X-P-> Y。

4.傳遞函數依賴

6.2.2_碼

6.2.3_范式

關系數據庫中的關系必須滿足一定的要求。滿足不同程度要求的為不同范式
第一范式(1NF):如果一個關系模式R的所有屬性都是不可分的基本數據項,則R∈1NF

6.2.4_2NF

第二范式(2NF):若R∈1NF,且每一個非主屬性完全函數依賴于碼,則R∈2NF。

6.2.5_3NF

第三范式(3NF):關系模式R<U,F> 中若不存在這樣的碼X、屬性組Y及非主屬性Z(Z ? Y), 使得X→Y,Y→Z成立, Y → X,則稱R<U,F> ∈ 3NF。(若R∈3NF,則每一個非主屬性既不部分依賴于碼也不傳遞依賴于碼

6.2.6_BCNF

6.2.7_多值依賴

6.2.8_4NF

6.2.9_規范化小結

6.3_Armstrong公理系統

6.3.1_函數依賴閉包

與編譯原理的閉包思想一樣

6.3.2_最小依賴集

定義
(1) F中任一函數依賴的右部僅含有一個屬性
(2) F中不存在這樣的函數依賴X→A,使得F與F-{X→A}等價。(函數依賴冗余
(3) F中不存在這樣的函數依賴X→A, X有真子集Z使得F-{X→A}∪{Z→A}與F等價。 (左部屬性冗余


求解方法:(分別對應定義中的三個條件)
(1)逐一檢查F中各函數依賴FDi:X→Y,若Y=A1A2 …Ak,k > 2,則用 { X→Aj |j=1,2,…, k} 來取代X→Y。
(2)逐一檢查F中各函數依賴FDi:X→A,令G=F-{X→A}, 若A∈XG+, 則從F中去掉此函數依賴
(3)逐一取出F中各函數依賴FDi:X→A,設X=B1B2…Bm,逐一考查Bi (i=l,2,…,m),若A ∈(X-Bi )F+ , 則以X-Bi 取代X。

6.3.3_轉換為3NF的保持函數依賴的分解

【例】 關系模型R<U,F>,U={A,B,C,D,E},F={A→BC,ABD→CE,E→D}

算法一:將關系R轉化3NF的保持函數依賴的分解

第一步:首先計算處F的最小函數依賴集,得到F‘={A→BC,AD→E,E→D}。

第二步:觀察U中是否有屬性不再F’中的出現,如果有,則這個屬性組成一對關系R,并在原來的U中刪除這些屬性。而例子中U的屬性都出現在F中,則可以跳過這一步。

第三步:對F‘中的函數依賴,把左邊的相同分為一組,一組中出現的所有屬性為一個關系。如F={A→B,A→C,……},左邊都為A的分為一組,得出項的所有屬性組為也給關系R{A,B,C,…}例題中左邊都不相同,所以一個函數依賴組為一個關系得到轉化為3NF的保持依賴分解1{A,B,C},R2{A,D,E},R3{E,D}。


算法二:將關系R轉化為3NF的既有無損連接有保持函數依賴的分解

第一步:先將R轉化為3NF的保持函數依賴的分解,由算法一的出R1{A,B,C},R2{A,D,E},R3{E,D}。

第二步:求出F的候選碼(候選碼求解算法)得出候選碼X為AD和AE。

第三步:將候選碼單獨組成關系得R4{A,D}和R5{A,E},然后與保持函數依賴后得分解取并集。得R1{A,B,C},R2{A,D,E},R3{E,D},R4{A,D},R5{A,E}。。、

第四步:觀察新組成得分解模式中,是否存在包含關系,有責去掉被包含得。如R3{E,D},R4{A,D},R5{A,E}都包含于R2{A,D,E},則刪除,最終得到轉化為3NF的既有無損鏈接有保持函數依賴的分解R1{A,B,C},R2{A,D,E}。

總結

以上是生活随笔為你收集整理的第六章关系数据理论的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。