公務員期刊網(wǎng) 論文中心 正文

    數(shù)據(jù)庫范式理論淺析

    前言:想要寫出一篇引人入勝的文章?我們特意為您整理了數(shù)據(jù)庫范式理論淺析范文,希望能給你帶來靈感和參考,敬請閱讀。

    數(shù)據(jù)庫范式理論淺析

    本文作者:賈玲 單位:武警學院基礎部

    一、關系數(shù)據(jù)庫規(guī)范化理論

    關系規(guī)范化理論就是按照統(tǒng)一的標準對關系進行優(yōu)化,將一個初始的、不太合理的關系模型轉(zhuǎn)化為一個高級的、合理的關系模型。其基本思想是通過合理的分解關系模式來消除其中不合適的數(shù)據(jù)依賴,以減少冗余數(shù)據(jù),提供有效的數(shù)據(jù)檢索方法,避免不合理的插入、刪除、修改等數(shù)據(jù)操作,保持數(shù)據(jù)的一致性[1]。在關系數(shù)據(jù)庫中,對關系模式的基本要求是滿足第一范式,這樣的關系模式就是合法的、允許的。但是人們發(fā)現(xiàn)有些關系模式存在插入、刪除異常、修改復雜、數(shù)據(jù)冗余等毛病,解決的辦法就是對關系進行規(guī)范化。規(guī)范化的過程就是將一個低一級范式的關系模式,通過模式分解轉(zhuǎn)換為若干個高一級范式的關系模式的集合。從理論上講,范式越高,規(guī)范化的程度就越高,但也不是范式越高就越好,要根據(jù)應用場合具體問題具體分析。范式低了,數(shù)據(jù)冗余嚴重,范式高了,影響系統(tǒng)速度。對于一般的數(shù)據(jù)庫應用系統(tǒng),只要將數(shù)據(jù)表規(guī)范到BCNF的標準就可以滿足用戶需求。

    二、第一范式(1NF)

    第一范式形式指在一個關系(二維表)中,各屬性(字段)均是不可再分的數(shù)據(jù)項,即是一個規(guī)則的二維表。1NF是關系的基本性質(zhì),任何關系必須滿足第一范式。比如表1表示的關系不滿足第一范式,將重復項表頭去掉,分解為表2,就滿足第一范式??梢钥闯?表2符合第一范式,但還有很多缺點:(1)數(shù)據(jù)冗余太大。每當有學生選一門課程時,該學生及學員隊信息都會重復出現(xiàn)一次,其實這些信息只出現(xiàn)一次就夠了。(2)數(shù)據(jù)更新麻煩。由于數(shù)據(jù)重復存儲,在更新時可能會造成數(shù)據(jù)不一致,直接影響了系統(tǒng)的質(zhì)量。若工程一隊隊長調(diào)換成李季,則所有關于工程一隊的記錄都要修改,加大了工作量,還有可能發(fā)生遺漏,造成數(shù)據(jù)的不一致。(3)插入異常。表2的主鍵是學號和課程名稱,因為主鍵字段不允許為空,所以新入學的同學因為還沒有選修任何一門課程而無法錄入到該表中。(4)刪除異常。若工程一隊學生畢業(yè),將學生記錄刪除,則連同工程一隊隊長的信息一起刪除,引起信息丟失。

    三、第二范式(2NF)

    第二規(guī)范化形式是指如果在一個滿足1NF的關系中,所有非關鍵字數(shù)據(jù)元素都完全依賴于候選關鍵字,即,如果給定一個關鍵字,則可以在這個數(shù)據(jù)表中唯一確定一條記錄。分析上面的例子,該關系的關鍵字為學號和課程名稱,(學號,課程名稱)一起函數(shù)決定任課教師和期末成績,(學號,課程名稱)也函數(shù)決定姓名,學員隊和隊長。但實際上只要學號就能函數(shù)決定姓名,學員隊和隊長。所以說任課教師和期末成績完全函數(shù)依賴于學號和課程名稱,姓名,學員隊和隊長部分函數(shù)依賴于學號,課程名稱。根據(jù)以上分析對表2進行無損分解為表3和表4。我們可以看出,表3和表4所有非關鍵字都完全依賴于候選關鍵字,但是表3仍然存在以下問題:數(shù)據(jù)冗余大。學員隊隊長的姓名會隨學生個數(shù)重復若干次;數(shù)據(jù)更新麻煩。若工程一隊更換隊長,則必須更改表3中所有工程一隊每個學員的紀錄,如果有遺漏,還會造成數(shù)據(jù)不一致;插入異常。若新成立一個隊,在沒有招生之前就無法輸入學員隊及隊長信息;刪除異常。如果張三退學,將張三的記錄刪除,則連同學員隊長的信息一起刪除,引起信息丟失。

    四、第三范式(3NF)

    對于那些滿足2NF的關系,所有非關鍵字都不傳遞依賴于候選關鍵字,則稱這個關系滿足第三規(guī)范化形式[2]。從表3可以看出,存在問題的原因就是存在傳遞依賴:隊長通過學員隊依賴于學號。消除表中傳遞依賴的方法,仍然是將表進行無損分解,將傳遞依賴單獨建立一張二維表,得到表5和表6。分析表4,雖然滿足第三范式,但仍然存在以下問題:(1)數(shù)據(jù)冗余大。高麗任數(shù)學教師,她的信息會隨其所教學生的數(shù)目重復若干次。(2)數(shù)據(jù)更新麻煩。若將計算機課的任課教師李可更換為李政,則所有李可教的學生的記錄都要更新,若漏改一處就會造成數(shù)據(jù)不一致。(3)插入異常。如果新來一個英語老師,會因為沒有學生選課而不能插入其信息。(4)刪除異常。若刪除04號的數(shù)學成績,則連同任課教師的信息一同刪除,會造成信息丟失。

    五、BCNF范式

    若關系模式中,每一個決定因素都包含候選關鍵字,則稱該關系滿足BCNF范式。具體來講就是一個滿足BCNF的關系模式有:(1)所有非主屬性對每一個候選關鍵字都是完全函數(shù)依賴。(2)所有的主屬性對每一個不包含它的候選關鍵字,也是完全函數(shù)依賴。(3)沒有任何屬性完全函數(shù)依賴于非候選關鍵字的任何一組屬性[3]。表4中,任課教師函數(shù)決定課程名稱,而任課教師是非關鍵字,不符合第3條,所以還應對表4進行無損分解,得到表7和表8。

    六、結論

    一個關系模式經(jīng)過規(guī)范化,如果都屬于BCNF范式,那么在函數(shù)依賴的范疇內(nèi),它已實現(xiàn)了徹底的分離,消除了插入和刪除異常,能滿足一般程序設計的要求。在實際應用中,并不一定要求所有關系都達到BCNF范式不可。有時,適當保留部分冗余可能更方便數(shù)據(jù)查詢,尤其對于那些更新頻度不高,查詢頻度較高的數(shù)據(jù)庫系統(tǒng)更是如此[3]。

    主站蜘蛛池模板: 欧美成人全部免费观看1314色| 成人性生交大片免费看好| 久久精品国产成人AV| 色窝窝无码一区二区三区成人网站| 色老头成人免费综合视频| 成人一a毛片免费视频| 国产成人精品97| 成人黄18免费视频| 国产成人yy免费视频| 窝窝视频成人影院午夜在线| 成人A级视频在线播放| 国产v片成人影院在线观看| 成人草莓视频在线观看| 国产成人免费在线观看| 成人试看120秒体验区| 久久久久免费看成人影片| 国产成人黄色小说| 成人自慰女黄网站免费大全| 免费无码成人AV在线播放不卡| 成人免费无码大片a毛片| 亚洲av午夜成人片| 国产成人综合欧美精品久久| 成人欧美视频在线观看| 91成人免费观看| 亚洲欧洲精品成人久久曰影片| 成人动漫综合网| 日韩欧美成人乱码一在线| 91成人在线免费观看| 久久99国产精品成人欧美| 亚洲av无码专区在线观看成人| 亚洲欧美日韩成人一区在线| 亚洲精品无码乱码成人| 国产成人亚洲综合无码| 国产成人精品一区二区三区免费 | 成人免费v片在线观看| 窝窝午夜看片成人精品| 麻豆精品传媒成人精品| 青青草成人免费| 成人窝窝午夜看片| 成人免费男女视频网站慢动作| 成人三级k8经典网|