freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

范式及其對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)的指導(dǎo)意義(已修改)

2025-01-30 20:06 本頁面
 

【正文】 1 第 2章 范式及其對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)的指導(dǎo)意義 問題的引出 范式理論概述 1NF及對(duì)實(shí)踐的指導(dǎo)意義 函數(shù)依賴 2NF及對(duì)實(shí)踐的指導(dǎo)意義 3NF及對(duì)實(shí)踐的指導(dǎo)意義 BCNF擴(kuò)充的第三范式 范式應(yīng)用實(shí)例分析 范式的局限 - 對(duì)冗余的進(jìn)一步討論 2 問題的引出 手工表格設(shè)計(jì)原則: ? 盡可能地減少重復(fù):我們把學(xué)生基本信息表以班級(jí)為單元組織,這樣班級(jí)信息就可放在表頭,避免了每個(gè)學(xué)生都出現(xiàn)重復(fù)的班級(jí)信息。 ? 避免重復(fù)也就減少了填寫表格的工作量及出現(xiàn)不一致差錯(cuò)的可能性。 ? 達(dá)到上述目標(biāo)的方法是進(jìn)行多表的設(shè)計(jì):學(xué)生信息表和班級(jí)信息表。 這些設(shè)計(jì)原則就是關(guān)系型數(shù)據(jù)庫(kù)設(shè)計(jì)的范式中所要求的內(nèi)容,上述三部分?jǐn)⑹鰧?duì)應(yīng)范式中的冗余、各種異常和模式分解。 3 范式理論概述 1)范式理論形成: 1971年,由 1970年首先提出 “ 大型共享數(shù)據(jù)庫(kù)數(shù)據(jù)的關(guān)系模型 ” 的關(guān)系數(shù)據(jù)庫(kù)之父 Edgar Frank Codd相繼提出了三級(jí)規(guī)范化形式 1NF3NF 1974年, Boyce共同提出 BCNF 1977 Ronald Fagin提出了第四范式 以后又相繼提出了 5NF( ProjectJoin Normal Form (PJ/NF)) 、 DKFN( Domain/Key Normal Form) 和 6NF 4 2)各范式之間關(guān)系: 1NF?2NF ?3NF ?BCNF ?4NF ?5NF ?DKNF?6NF 3)規(guī)范化方法:一個(gè)屬于低一級(jí)的范式的關(guān)系模式可以通過模式分解轉(zhuǎn)換成屬于高一級(jí)范式的關(guān)系模式,這個(gè)過程稱為關(guān)系模式的規(guī)范化。 5 4)規(guī)范化目的:消除關(guān)系中的數(shù)據(jù)冗余 由于數(shù)據(jù)冗余引發(fā)的問題: 浪費(fèi)了存儲(chǔ)資源,并且重復(fù)的數(shù)據(jù)占用的空間隨數(shù)據(jù)量的遞增而遞增。 由于數(shù)據(jù)的重復(fù),為保證數(shù)據(jù)的一致性,將增加數(shù)據(jù)維護(hù)(插入、更新和刪除)的代價(jià),從而降低了系統(tǒng)的開發(fā)和運(yùn)行效率 各種意外還是可能造成重復(fù)數(shù)據(jù)的不一致,從而降低了系統(tǒng)的穩(wěn)定性和可靠性。 是產(chǎn)生插入,更新和刪除異常根源(見下例) 6 插入,更新和刪除異常實(shí)例: 假設(shè)存在下列關(guān)系,包含學(xué)生和系的基本信息: 學(xué)號(hào) 姓名 所在系 系主任 001 zhang 數(shù)學(xué) Mr Li 002 wang 數(shù)學(xué) Mr Li 003 zhou 數(shù)學(xué) Mr Li 004 feng 計(jì)算機(jī) Mr chen 005 dong 計(jì)算機(jī) Mr chen 該關(guān)系存在插入,更新和刪除異常。 7 插入異常:當(dāng)新成立一個(gè)系但還沒有學(xué)生時(shí),產(chǎn)生插入異常。 刪除異常:當(dāng)一個(gè)系的學(xué)生被全部刪除后,系信息也被刪除。 更新異常:當(dāng)系名稱或系主任發(fā)生變化,必須同時(shí)更新這個(gè)系所有學(xué)生記錄,若漏改一個(gè),就產(chǎn)生更新異常。 8 5)規(guī)范化理論對(duì)實(shí)踐的指導(dǎo)意義 異常分類:關(guān)系設(shè)計(jì)不規(guī)范引起插入,更新和刪除異常有的可以通過嚴(yán)密的算法避免發(fā)生,有的則不能避免。在上例中,插入和刪除異常不可避免,而更新異常卻可以避免。 不可避免異常:若數(shù)據(jù)庫(kù)的設(shè)計(jì)中存在不可避免的異常時(shí),需求將無法實(shí)現(xiàn),設(shè)計(jì)者會(huì)自覺地消除這些異常。在上例中,一般會(huì)增加一個(gè)“ 系(系名,系主任) ” 關(guān)系來排除不可避免的插入和刪除異常。這時(shí),規(guī)范化設(shè)計(jì)成為設(shè)計(jì)師自覺的行動(dòng) 9 可避免異常:關(guān)系規(guī)范化理論對(duì)設(shè)計(jì)者有指導(dǎo)意義的是消除可避免異常引起的數(shù)據(jù)冗余。 冗余和范式關(guān)系: ? 一般消除了一個(gè)關(guān)系中的數(shù)據(jù)冗余(除外鍵引用為必要的數(shù)據(jù)冗余外),該關(guān)系也就符合了范式要求。 ? 一個(gè)關(guān)系符合范式要求,一般就不會(huì)產(chǎn)生數(shù)據(jù)冗余,但必須注意的是范式可以消除一個(gè)關(guān)系中的(單行)數(shù)據(jù)冗余,但不能消除一個(gè)表的行間冗余和多個(gè)關(guān)系之間的數(shù)據(jù)冗余。 10 1NF及對(duì)實(shí)踐的指導(dǎo)意義 第一范式是關(guān)系數(shù)據(jù)模式必須遵循的規(guī)范,其他規(guī)范均建立在此基礎(chǔ)之上 關(guān)系的一切數(shù)學(xué)理論均基于關(guān)系模式服從 1NF 是唯一沒有嚴(yán)格定義的范式,容易被忽視和誤解 11 1NF的最常見的表述及認(rèn)識(shí)上的誤區(qū) 若一個(gè)表中所有列是不可再分的數(shù)據(jù)項(xiàng)(原子項(xiàng)),就稱這樣的設(shè)計(jì)屬于或服從第一范式 如一個(gè)學(xué)生的成績(jī)包括 “ 高等數(shù)學(xué) ” 、 “ 英語 ”和 “ 計(jì)算機(jī)科學(xué) ” 等,則成績(jī)不能作為學(xué)生關(guān)系中的一 個(gè)屬性。 要使其符合 1NF,必須 把 “ 高等數(shù)學(xué) ” 、 “ 英語 ”和 “ 計(jì)算機(jī)科學(xué) ” 成績(jī)直接作為學(xué)生關(guān)系的屬性。 由于關(guān)系數(shù)據(jù)庫(kù)中表中列之間的關(guān)系相互并列 ,本身不支持層次結(jié)構(gòu)或數(shù)組 ,所以表面上看 ,只要是二維表 ,就一定符合 1NF 12 若一個(gè)表中不包含任何重復(fù)的數(shù)據(jù)項(xiàng),稱這樣的設(shè)計(jì)屬于或服從第一范式。 所謂重復(fù)的數(shù)據(jù)項(xiàng)是指這些數(shù)據(jù)項(xiàng)具有相同性質(zhì)并且數(shù)據(jù)項(xiàng)數(shù)量具有變化的預(yù)期 由 “ 學(xué)號(hào) ” 、 “ 姓名 ” 、 “ 高等數(shù)學(xué) ” 、“ 英語 ” 和 “ 計(jì)算機(jī)科學(xué) ” 構(gòu)成的二維表,在課程可能增加和變化的情況下,它仍然不符合 1NF。 1NF另一種表述和全面理解 1NF 13 如此設(shè)計(jì)的弊端是一旦增加一門課程,該二維表的結(jié)構(gòu)就必須作修改。這種設(shè)計(jì)隱含了結(jié)構(gòu)上的不穩(wěn)定性,將會(huì)給據(jù)此設(shè)計(jì)的系統(tǒng)造成不斷重復(fù)的修改。 正確的做法是把成績(jī)獨(dú)立出來,形成的一個(gè)成績(jī)表,包含 “ 學(xué)號(hào) ” 、 “ 學(xué)科 ”和 “ 成績(jī) ” 數(shù)據(jù)項(xiàng)。 14 全面理解 1NF 不要把若干數(shù)據(jù)組合成一個(gè)字符串或組合列作為數(shù)據(jù)表的一個(gè)列,這同樣違反 1NF 這樣做的風(fēng)險(xiǎn)是數(shù)據(jù)庫(kù)管理系統(tǒng)對(duì)組合列中某個(gè)數(shù)據(jù) (通常為字符串的子串 )的可操作性和操作效率通常比對(duì)列的操作要差 如一般數(shù)據(jù)庫(kù)管理系統(tǒng)不支持把一個(gè)列的子串作為外鍵 15 常見的設(shè)計(jì)和需求: “ 學(xué)號(hào) ” 列往往包含了學(xué)生的年級(jí)、專業(yè)和班級(jí)信息,一個(gè) “ 會(huì)計(jì)科目號(hào) ” 的列包含了從一級(jí)科目開始的各級(jí)科目的科目號(hào)信息。 規(guī)范的設(shè)計(jì):把學(xué)號(hào)改成學(xué)生在班級(jí)中的序號(hào),通常也就是 “ 學(xué)號(hào) ” 的后兩位,在學(xué)生信息表中增加年級(jí)、專業(yè)和班號(hào)的列 滿足需求:在界面上或打印時(shí)若需要輸出用戶要求的 “ 學(xué)號(hào) ” ,可由這些列組合生成。 既滿足了 1NF的要求,又滿足的用戶需求。 年級(jí)、專業(yè)和班級(jí)號(hào)這些列對(duì)學(xué)生表是必需的,在概念數(shù)據(jù)模型中,它反映的是學(xué)生和專業(yè)及班級(jí)的關(guān)系 16 函數(shù)依賴 函數(shù)依賴是定義第二范式到 BCNF范式的基礎(chǔ)概念 假設(shè) A, B分別包含了一個(gè)表的某些列,若 A中列的列值能唯一確定 B中列的列值,則我們稱 B函數(shù)依賴于 A,記為: A?B。若 B不函數(shù)依賴于 A,記為 A+B 17 非平凡的函數(shù)依賴 當(dāng) B包含的列均在 A中,則必然有 B函數(shù)依賴于 A ,稱為平凡的函數(shù)依賴,反之,成為非平凡的函數(shù)依賴。 平凡的函數(shù)依賴沒有任何的實(shí)際意義,所以后面除特別指出,函數(shù)依賴都指非平凡的函數(shù)依賴 18 部分和完全函數(shù)依賴 B函數(shù)依賴于 A,但同時(shí)函數(shù)依賴于 A中的部分列,我們稱 B部分函數(shù)依賴于 A,否則稱 B完全函數(shù)依賴于 A 非平凡的完全的函數(shù)依賴才是有意義的并且能反映函數(shù)依賴之本質(zhì)的函數(shù)依賴 如果一個(gè)表的所有列均完全函數(shù)依賴于某些列,那么,這些列就一定構(gòu)成該表的候選碼 19 傳遞函數(shù)依賴 假設(shè) A, B, C分別由一個(gè)表的某些列構(gòu)成, A?B,但 B+A, B?C,那么自然得出 A?C,我們把通過 B“傳遞 ” 得到的C對(duì) A的函數(shù)依賴稱為傳遞函數(shù)依賴。 20 2NF及對(duì)實(shí)踐的指導(dǎo)意義 關(guān)系(表)的每一個(gè)非主屬性列均完全函數(shù)依賴于任一候選碼,這樣的設(shè)計(jì)屬于或服從第二范式。 由于非主屬性均函數(shù)依賴于碼,所以第二范式去除了非主屬性對(duì)碼的部分依賴。 假設(shè) (x,y)為
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1