• <input id="zdukh"></input>
  • <b id="zdukh"><bdo id="zdukh"></bdo></b>
      <b id="zdukh"><bdo id="zdukh"></bdo></b>
    1. <i id="zdukh"><bdo id="zdukh"></bdo></i>

      <wbr id="zdukh"><table id="zdukh"></table></wbr>

      1. <input id="zdukh"></input>
        <wbr id="zdukh"><ins id="zdukh"></ins></wbr>
        <sub id="zdukh"></sub>
        公務員期刊網 論文中心 正文

        數據庫關系模式整合方法

        前言:想要寫出一篇引人入勝的文章?我們特意為您整理了數據庫關系模式整合方法范文,希望能給你帶來靈感和參考,敬請閱讀。

        數據庫關系模式整合方法

        本文作者:張麗君 單位:河南科技學院

        一、引言

        在整個數據庫系統的設計過程中,總共分為六個基本階段,即需求分析、概念結構設計、邏輯結構設計、物理結構設計、數據庫的實施、數據庫試運行階段就。其中在邏輯結構設計階段的主要任務是如何將概念結構轉換的關系模式進行優化。因為單純的從概念結構轉換的關系模式不一定具有“好”的性質。一個具有“好”的性質的關系模式中,沒有不必要的冗余數據,也沒有異常現象存在。所謂的冗余數據是指沒有必要重復、大量出現的數據,在數據庫中我們也不可能完全避免冗余現象,但是我們可以盡量減少冗余數據。異常現象主要是指在對數據庫進行增、刪、改操作的時候可能會出現的一些錯誤現象。

        二、實例分析

        下面通過一個實例說明一個“不好”的數據庫中存在的問題。現有一個學生信息管理系統,其中的一個“學生選課管理表”包含以下屬性:學號(sno),系別(sdept),系主任名(mname),課程號(cno),成績(grade)。假設這個表中總共有4名學生,分別選修了不同的課程,如下表1所示:那么在這個關系模式中存在什么問題呢?經過分析,主要存在以下問題:

        1.數據冗余嚴重:每個院系的學生選一門課程,其系名就重復存儲一次;每個院系有多少個學生選課,系主任名就重復存儲多少次。

        2.更新異常(UpdateAnomalies):由于存在數據冗余必然會導致更新數據時,操作更加復雜,使得維護數據完整性代價大。稍一疏忽,就會導致數據庫中數據的不一致。

        3.插入異常(InsertionAnomalies):想要插入到表中的數據系統不允許插入,如新轉來一個學生,該生還沒有選課,因此這個元組信息就不允許插入,因為違反了實體完整性規則。

        4.刪除異常(DeletionAnomalies):不想刪除的數據卻不得不從數據庫中刪除,如數學系的學生王五退學了,在刪除王五信息的同時,也把該院系的系主任信息刪除掉了,可是系主任信息只取決于院系,跟具體的學生沒有關系。

        三、優化方法

        為了解決上述表中出現的各種問題,把一個“不好”的關系模式變成一個x性質“好”的關系模式。可以通過模式分解的方法來實現。把低級別的關系模式通過簡單的分解,逐步去除其中的冗余和異常現象,轉換為若干個高一級范式的關系模式集合,這個過程就叫關系模式的規范化。關系數據庫模式優化就是以規范化理論為基礎,通過分析關系模式中屬性和屬性之間的函數依賴關系,按照一定的標準把一個大的關系模式進行分解,生成一些小的子關系模式,目的是通過破壞不合理的函數依賴,解決關系模式中存在的各種異常問題

        (一)函數依賴基本概念

        設R(U)是一個屬性集U上的關系模式,W和Z是U的子集。若對于R(U)的任意一個可能的關系r,r中不可能存在兩個元組在W上的屬性值相等,而在Z上的屬性值不等,則稱“W函數確定Z”或“Z函數依賴于W”,記作W→Z。也就是說,對t,s∈r,若t[W]=s[W],則t[Z]=s[Z]那么稱“W函數決定Z”,或“Z函數依賴于W”。需要說明的是,函數依賴是一個語義范疇的概念,而且函數依賴也不是指關系模式R的某個或某些關系實例滿足的約束條件,而是指R的所有關系實例均要滿足的約束條件。

        (二)范式基本概念

        范式是符合某一種級別的關系模式的集合。關系數據庫中的關系必須滿足一定的要求,滿足不同程度要求的為不同范式。各種范式之間存在聯系:1NF2NF3NFBCNF4NF5NF某一關系模式R為第n范式,可簡記為R∈nNF。1.1NF:第一范式要求關系中的所有分量都必須是不可再分的原子項。1NF是每個關系數據庫中的關系模式都應滿足的最低要求,也就是說如果一個關系模式不滿足第一范式,那么它就不能稱之為是關系數據庫。如圖1所示的關系模式就不滿足1NF,也就是不允許在一張表中又出現小表。2.2NF:若R∈1NF,且每一個非主屬性完全函數依賴于碼,則R∈2NF。3.3NF:關系模式R<U,F>中若不存在這樣的碼X、屬性組Y及非主屬性Z(Z不是Y的子集),使得X→Y,Y→Z成立,Y→X,則稱R<U,F>∈3NF。4.BCNF:設關系模式R<U,F>∈1NF,如果對于R的每個函數依賴X→Y,若Y不屬于X,則X必含有候選碼,那么R∈BCNF。5.4NF:若關系模式R中的每個非平凡多值依賴X→Y(YX),X都含有碼,則R∈4NF。6.5NF:若R∈4NF,且不存在連接依賴,則R∈5NF。

        (三)優化的方法

        規范的關系模式可保證關系中消除數據冗余、消除插入困難、消除修改困難。關系模式優化的基本思想就是逐步消除數據依賴中不合適的部分,使模式中的各關系模式達到某種程度的”分離”。其基本步驟如圖2所示。

        (四)優化實例

        有關系模式學生(學號,課號,姓名,性別,系號,課名,成績,系主任,樓號),其中各個屬性之間的函數依賴如圖3所示。1.消除部分依賴,得到滿足2NF的關系模式:Student(學號,姓名,性別,系號,系主任,樓號)Sc(學號,課號,成績)Course(課號,課名)2.消除傳遞依賴,得到滿足3NF的關系模式:Student(學號,姓名,性別,系號)Deparment(系號,系主任,樓號)Sc(學號,課號,成績)Course(課號,課名)

        四、結論

        規范化首先要保證關系中所有屬性都是原子項,也就是在保證其滿足1NF的基礎上,如果關系的碼是由單屬性組成,則這個關系模式必然滿足2NF,否則消除部分函數依賴可得2NF關系;如果一個關系模式中所有屬性都是主屬性,則這個關系模式必然滿足3NF。如果有非主屬性存在,則還需要判斷是否對候選碼有傳遞函數依賴,如果有就消除之可得3NF關系;依此類推。直到消除了操作異常現象。

        无码人妻一二三区久久免费_亚洲一区二区国产?变态?另类_国产精品一区免视频播放_日韩乱码人妻无码中文视频
      2. <input id="zdukh"></input>
      3. <b id="zdukh"><bdo id="zdukh"></bdo></b>
          <b id="zdukh"><bdo id="zdukh"></bdo></b>
        1. <i id="zdukh"><bdo id="zdukh"></bdo></i>

          <wbr id="zdukh"><table id="zdukh"></table></wbr>

          1. <input id="zdukh"></input>
            <wbr id="zdukh"><ins id="zdukh"></ins></wbr>
            <sub id="zdukh"></sub>
            亚洲国产人成中字幕 | 亚洲日本欧美在线不卡黑配白 | 日日狠狠久久偷偷四色综合免费 | 最新国产自产视频在线观看 | 中文字幕大香视频蕉 | 亚洲欧美日韩精品专区 |