版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
《數(shù)據(jù)庫原理及應(yīng)用》?精品課件合集目錄03
范式理論01
規(guī)范化概念02函數(shù)依賴第10章范式及反范式設(shè)計04
范式設(shè)計05
反范式設(shè)計規(guī)范化概念【例】設(shè)計一個教學(xué)管理數(shù)據(jù)庫,希望從該數(shù)據(jù)庫中經(jīng)常得到下面的有關(guān)信息:學(xué)號、姓名、年齡、性別、系、系主任姓名、課程號、成績等。參考設(shè)計的關(guān)系模式如下:SCS(sno,sname,cno,cname,term,credit,grade)問題:這是不是一個理想的關(guān)系模式呢?規(guī)范化概念規(guī)范化概念關(guān)系模式SCS存在的問題是:①冗余大:表中相同信息多次存儲,浪費(fèi)存儲空間。②插入異常:若沒有招生,課程信息無法插入到數(shù)據(jù)庫中。③刪除異常:刪除課程就刪除了學(xué)生記錄。④更新異常:由于信息存在大量冗余,更新信息時要付出很大的代價。規(guī)范化概念結(jié)論:SCS關(guān)系模式不是一個理想的模式。原因:由于模式中存在的數(shù)據(jù)依賴引起的。解決方法:通過分解關(guān)系模式來消除其中不合適的數(shù)據(jù)依賴
數(shù)據(jù)依賴是各屬性間的關(guān)聯(lián),包括函數(shù)依賴、多值依賴和連接依賴。這里我們只學(xué)習(xí)函數(shù)依賴。函數(shù)依賴定義1:設(shè)R(U)是屬性集U上的關(guān)系模式。X,Y是U的子集。對于X的每一個具體值,Y都有唯一的值與之對應(yīng),則稱“X函數(shù)決定Y”或“Y函數(shù)依賴于X”,記作X
Y。稱X為決定因子,Y是依賴因子。X
Y為模式R(U)的一個函數(shù)依賴。如:
snosname,(sno,cno)
grade注意:屬性間的函數(shù)依賴完全來自于現(xiàn)實(shí)世界的語義,而不是憑主
觀臆斷的。函數(shù)依賴函數(shù)依賴與屬性之間的對應(yīng)取值有關(guān)。在關(guān)系模式中,如果屬性X與Y的值有1:1關(guān)系時,則存在函數(shù)依賴X→Y,Y→X,如當(dāng)學(xué)生不重名時,sno→sname,sname→sno。如果屬性X與Y的值有m:1關(guān)系時,則只存在函數(shù)依賴X→Y,例如:“sno”與“sage”之間為m:1聯(lián)系,所以有sno→sage。如果屬性X與Y的值有m:n關(guān)系時,則X與Y之間不存在任何函數(shù)依賴關(guān)系。如sno和cno之間不存在任何函數(shù)依賴關(guān)系。函數(shù)依賴定義2:在關(guān)系模式R(U)中,如果X
Y,并且對于X的任何一個真子集X
都有XY,則稱Y完全函數(shù)依賴于X,記作XY。f如果Y部分函數(shù)依賴于X,則X必定是組合屬性。如:(sno,cno)
sname,snosname,(sno,cno)
sname。
p若X
Y,并且對于X的某一個真子集X
(X
X),有XY,則稱Y部分函數(shù)依賴于X,記作:XY。p函數(shù)依賴定義3:在關(guān)系模式R(U)中,如果X
Y,(Y
X),Y
X,Y
Z,則稱Z傳遞函數(shù)依賴于X,記作XZ
。t【例10.3】在STD(sno,dept,dname),有sno→dept,dept→dname,且dept
sno,則sno→dname。t范式理論定義4:設(shè)有關(guān)系模式R(U),其所有的屬性都是不可分的基本數(shù)據(jù)項,則稱R屬于第一范式,簡稱1NF,記作R1NF。在任何一個關(guān)系數(shù)據(jù)庫系統(tǒng)中,第一范式是對關(guān)系模式的一個最起碼的要求。不滿足第一范式的數(shù)據(jù)庫模式不能稱為關(guān)系數(shù)據(jù)庫。【例】關(guān)系模式SCD(sno,cno,sname,sage,dept,dname,grade)
SCD1NF范式理論定義5:設(shè)有關(guān)系模式R(U)1NF
,如果其所有非主(碼)屬性都完全函數(shù)依賴于碼,則稱R屬于第二范式,簡稱2NF,記作R2NF。即關(guān)系模式中不存在非主屬性對碼的部分函數(shù)依賴問題?!纠糠纸夥▽CD分解為兩個關(guān)系模式:
S(sno,sname,sage,dept,dname),S2NFSC(sno,cno,grade),SC2NF范式理論定義6:設(shè)有關(guān)系模式R(U)2NF,如果其所有非主屬性都不傳遞函數(shù)依賴于碼,則稱R屬于第三范式,簡稱3NF,記作R3NF。即關(guān)系模式中不存在非主屬性對碼的傳遞函數(shù)依賴關(guān)系?!纠縎分解為兩個關(guān)系模式: ST(sno,sname,sage,dept),ST3NF SD(dept,dname),SD3NF范式設(shè)計范式設(shè)計:一般是將一個符合1NF的關(guān)系模式分解為符合3NF的過程。1NF2NF3NF消除非主屬性對碼的部分依賴關(guān)系消除非主屬性對碼的傳送依賴關(guān)系范式設(shè)計【例】:已知關(guān)系模式R(A,B,C,D,E),R上存在的函數(shù)依賴有F={AB→E,B→C,C→D},求:
①關(guān)系模式的碼;
②該關(guān)系模式滿足幾范式,為什么?
③將R分解為高一級的范式,并說明理由。范式設(shè)計解:①根據(jù)函數(shù)依賴集F={AB→E,B→C,C→D}由于(A,B)能夠決定所有的屬性集合,且沒有任一真子集能夠決定所有的屬性集合,所以R的碼為(A,B)。③將R分解為R1,R2:
R1(A,B,E),F(xiàn)1={(A,B)→E};
R2(B,C,D),F(xiàn)2={B→C,C→D}。R1中:不存在非主屬性對碼的部分函數(shù)依賴,所以R1∈2NF。R2中:碼為B,則非主屬性為C,D,不存在非主屬性對碼的部分函數(shù)依賴,所以R2∈2NF。②已知R的碼為(A,B),所以非主屬性為C,D,E?!逨中存在B→C∴存在非主屬性C對碼(A,B)的部分函數(shù)依賴,所以R∈1NF。范式設(shè)計【例10.5】某教學(xué)管理系統(tǒng)中有學(xué)生(student)、課程(course)兩個實(shí)體,一個學(xué)生可以選修多門課程,一門課程可以供多個學(xué)生選修,學(xué)生通過考試可以獲得該門課程的成績(grade)。若成績合格可以獲得相應(yīng)的學(xué)分,若成績不合格可以重修該課程,每一次考試成績保存到成績表中。可以通過學(xué)生選修的課程統(tǒng)計出該學(xué)生所獲得的總學(xué)分(totalcredit)。(1) 根據(jù)上述需求,結(jié)合實(shí)際情況,建立E-R圖;(2) 將E-R圖轉(zhuǎn)換為關(guān)系模式,注明主碼。(3)按照數(shù)據(jù)庫規(guī)范化設(shè)計步驟,分析關(guān)系模式是否滿足范式設(shè)計要求。解:按照數(shù)據(jù)庫的設(shè)計步驟進(jìn)行數(shù)據(jù)庫設(shè)計。(1)按照教學(xué)管理系統(tǒng)的業(yè)務(wù)需求,得出系統(tǒng)的概念模型如下。范式設(shè)計(2)將概念模型轉(zhuǎn)換為關(guān)系模式如下。student(sno,sname,sex,dept,birthday,totalcredit,remarks)course(cno,cname,term,ctime,credit)score(sno,cno,grade)(3)分析關(guān)系模式是否滿足范式設(shè)計要求和業(yè)務(wù)需求。在關(guān)系模式student中,碼sno與非碼屬性totalcredit不存在函數(shù)依賴關(guān)系,若把總學(xué)分屬性放在學(xué)生關(guān)系中,在錄入學(xué)生信息時,總學(xué)分的值總為NULL值。另外,總學(xué)分是根據(jù)學(xué)生選修課程計算出來的,總學(xué)分直接依賴grade和credit兩個屬性,與sno無直接依賴關(guān)系,應(yīng)該把totalcredit從student關(guān)系模式中去掉。范式設(shè)計在關(guān)系模式score(sno,cno,grade)中,sno和cno做為組合主鍵,它與grade之間是1對1函數(shù)依賴關(guān)系,但業(yè)務(wù)需求中應(yīng)該是1對多的函數(shù)依賴關(guān)系,即一個學(xué)生選修某門課程可以存在多個成績。要解決上述問題,則可以使用一個無符號的自增邏輯主鍵(score_id)來替代業(yè)務(wù)主鍵(sno,cno),它的作用是區(qū)分每一條記錄。至于總分學(xué)totalcredit的值,可以設(shè)計一個存儲過程進(jìn)行計算并顯示,無需把它看成某個實(shí)體的屬性來存放他的值。滿足設(shè)計要求的關(guān)系模式如下。student(sno,sname,sex,dept,birthday,remarks)course(cno,cname,term,ctime,credit)score(score_id,sno,cno,grade)范式設(shè)計反范式設(shè)計問題:規(guī)范化理論使得每張表只表達(dá)圍繞主碼的數(shù)據(jù)庫最核心的內(nèi)容,數(shù)據(jù)之間的關(guān)聯(lián)性需要通過外碼進(jìn)行表間連接來實(shí)現(xiàn)。在實(shí)際使用中,往往需要進(jìn)行多表連接才能滿足業(yè)務(wù)需求,這會降低系統(tǒng)的查詢效率。規(guī)范化的思路是從空間最小化的角度來進(jìn)行的數(shù)據(jù)庫設(shè)計,通過規(guī)范化使得數(shù)據(jù)庫的空間占用率最低。然而在具體使用中,可能需要關(guān)注更高的時間效率,“以空間換時間”也會經(jīng)常被使用,所以會出現(xiàn)反范式設(shè)計的思想。反范式設(shè)計【例10.6】在教學(xué)管理系統(tǒng)中,經(jīng)常用到的一個業(yè)務(wù)需求是查詢某學(xué)生某門課程的成績,返回的信息包含學(xué)號、姓名、課程號、課程名、成績等信息。給出反范式設(shè)計的關(guān)系模式如下。student(sno,sname,sex,dept,birthday,remarks)
∈3NFcourse(cno,cname,term,ctime,credit)
∈3NFscore(sno,cno,sname,cname,grade)
∈1NF反范式設(shè)計反范式設(shè)計也會帶來一些問題,比如更新異常問題,因為學(xué)生的姓名(sname)和課程名(cname)在score表中被重復(fù)保存,若course表的cname值改變了,則在score表中已經(jīng)保存的cname值也要發(fā)生變化,否則就有更新異常發(fā)生。可以考慮在course表中設(shè)計一個更新觸發(fā)器來解決課程名變化的問題。DELIMITER$$CREATETRIGGERtr_course_cna
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個性化聘用協(xié)議:2024年版權(quán)益保障版A版
- 2025版臨時合作項目聘用協(xié)議4篇
- 2025年度市政道路大理石鋪裝及后期養(yǎng)護(hù)管理合同4篇
- 2025年度個人快遞分揀中心租賃合同樣本4篇
- 智能家居新趨勢提升家庭生活質(zhì)量
- 教育與培訓(xùn)中的創(chuàng)新思維教學(xué)方法探討
- SSL證書的申請與配置(2024版)3篇
- 家庭教育中的自然教育與戶外活動結(jié)合
- 2025年度土地承包權(quán)抵押融資承包合同模板4篇
- 2025年度瑪雅酒店客房預(yù)訂管理合同4篇
- 四川省成都市武侯區(qū)2023-2024學(xué)年九年級上學(xué)期期末考試化學(xué)試題
- 初一到初三英語單詞表2182個帶音標(biāo)打印版
- 2024年秋季人教版七年級上冊生物全冊教學(xué)課件(2024年秋季新版教材)
- 2024年共青團(tuán)入團(tuán)積極分子考試題庫(含答案)
- 碎屑巖油藏注水水質(zhì)指標(biāo)及分析方法
- 【S洲際酒店婚禮策劃方案設(shè)計6800字(論文)】
- 鐵路項目征地拆遷工作體會課件
- 醫(yī)院死亡報告年終分析報告
- 中國教育史(第四版)全套教學(xué)課件
- 上海民辦楊浦實(shí)驗學(xué)校初一新生分班(摸底)語文考試模擬試卷(10套試卷帶答案解析)
- 圍手術(shù)期應(yīng)急預(yù)案
評論
0/150
提交評論