數據庫系統(四)---關係型數據庫設計及E-R圖

1、關係型數據庫:

  關係型數據庫是一類採用關係模型作爲邏輯數據模型的數據庫系統,遵從數據庫設計的基本步驟,包括:需求分析、概念結構設計、邏輯結構設計、物理結構設計、數據庫實施、數據庫的運行和維護等階段。 概念結構設計與邏輯結構設計是關係數據庫整個設計過程的關鍵。

 

2、關係數據庫設計過程與各級模式

  在關係數據庫設計的不同階段,會形成數據庫的各級模式。

   1)需求分析階段,綜合各個用戶的應用需求;

   2)概念結構設計階段,形成獨立於機器特點、獨立於各個關係數據庫管理系統產品的概念模式;

   3)邏輯結構設計階段,將 E-R 圖轉換成具體的數據庫產品支持的關係數據模型,形成數據庫邏輯模式,然後根據用戶處理的要求、安全性的考慮,在基本表的基礎上再建立必要的視圖,形成數據的外模式;

   4)物理結構的設計階段,根據關係數據庫管理系統的特點和處理的需要,進行物理存儲安排,建立索引,形成數據庫內模式。

      注:詳細瞭解,請參考數據模式https://www.cnblogs.com/huyangshu-fs/p/11620600.html

 

3、 概念結構設計方法

  關係數據庫的概念結構設計通常採用自頂向下法,它通過兩個步驟來完成概念設計,首先建立局部信息結構,然後將局部信息結構合成爲全局信息結構並優化,使用 E-R 圖作爲概念模型的描述工具。

   1)局部信息結構設計

  局部信息結構設計:根據需求分析報告中標明的不同用戶視圖範圍所建立的滿足該範圍內用戶需求的信息結構,稱爲局部信息結構。

  局部信息結構設計的步驟包括:確定局部範圍;選擇實體;選擇實體關鍵字; 確定實體間聯繫;確定實體的屬性。

   2)E-R 圖的表示方法

  概念結構設計就是將需求分析得到的用戶需求抽象爲信息結構的過程,通常使用 E-R 圖來作爲描述現實世界的建模工具。E-R 圖提供了表示信息世界中實體、屬性和聯繫的方法。

  1.實體型,用矩形表示,寫明實體的名稱;

  2.屬性,用橢圓形表示,並用無向邊將其與其相應的實體連接起來。

  3.聯繫,用菱形表示,寫明聯繫的名稱,用無向邊分別與有關實體連接起來,同時在無向邊旁標註聯繫的類型(1:1、1:N 或 M:N),如果一個聯繫具有屬性, 則這些屬性也要用無向邊與該聯繫連接起來。

  兩個實體型之間、兩個以上的實體型之間以及單個實體型內的聯繫,都會存在如下關係: 一對一聯繫(1:1) 一對多聯繫(1:N) 多對多聯繫(M:N)

 

   3)全局信息結構設計

 

  全局信息結構設計是將上述步驟中產生的所有局部信息結構合併成爲一個全局信息結構。 各局部 E-R 圖之間的衝突主要表現在三個方面:

 

  3.1).屬性衝突:屬性域衝突和屬性取值單位衝突。

 

  3.2).命名衝突:同名異義和異名同義。

 

  3.3).結構衝突:

 

   ① 同一對象在一個局部 E-R 圖中作爲實體,而在另一個 局部 E-R 圖中作爲屬性;

 

   ② 同一實體在不同的 E-R 圖中屬性個數和類型不同;

 

   ③ 實體之間的聯繫在不同的 E-R 圖中是不同的類型。

 

  eg:

  【例】設有如下實體:

    學生:學號,姓名,性別

    課程:課程號,課程名,學分

    班級:班號,班名,

    其中,每個班有若干學生,每個學生只可以在—個班級學習;每個學生可選修多門課程,每門課程可被多個學生選修,學生選修課程要記錄成績。

   1. 試畫出反映上述實體關係的 E-R 圖(不必畫實體的屬性)。

    

 

 

     注意:學生選修課程之後纔能有成績,故成績是選修(聯繫)的屬性。

 

 

 

4、邏輯結構設計方法

  邏輯結構設計的任務是把在概念結構設計產生的概念模型轉換爲具體的 DBMS 所支持的邏輯數據模型,也就是導出特定的 DBMS 可以處理的數據庫邏輯結構。 通常包括三項工作:將 E-R 圖轉換爲關係模型、對關係數據模型進行優化、設計面向用戶的外模式。

   1)E-R 圖向關係模型的轉換 遵循原則如下:

  1. 一個實體型轉換爲一個關係模式。

  2. 一個一對一聯繫可以轉換爲一個獨立的關係模式。

  3. 一個一對多聯繫可以轉換爲一個關係模式。

  4. 一個多對多聯繫轉換爲一個關係模式。

  5. 具有相同碼的關係模式可合併。

  eg:

  使用3中的示例,將E-R圖轉化爲關係模式,並說明主外鍵

  (1)一個實體型對應一個關係模式:

         R學生(學號,姓名,性別)

 

    R課程(課程號,課程名,學分)

 

    R班級(班號,班名)

 

     (2)一個一對多聯繫可轉化爲一個關係模式(中間表)

    R屬於(學號、班號)外鍵 學號 和 班號

  (3)一個多對多聯繫可轉化爲一個關係模式(中間表)

    R選修(學號、課程號、成績)外鍵 學號 和 課程號

  (4)R學生和R屬於可合併成一張表

    R學生(學號、姓名、性別、班號)外鍵 班號

    2)數據模型的優化 方法如下:

  1.確定各屬性間的函數依賴關係。

  2.對於各個關係模式的範式,根據實際需要確定最合適的範式。

  3.判斷每個關係模式的範式,根據實際需要確定最合適的範式。

  4.按照需求分析階段得到的處理要求,分析這些模式對於這樣的應用環境是否 合適,確定是否要對某些模式進行合併或分解。

  5.對關係模式進行必要的分解,提高數據操作的效率和存儲空間的利用率。

 

   3)設計用戶子模式 定義用戶模式具體包括以下幾個方面:

  1.可以通過視圖機制在設計用戶視圖時,重新定義某些屬性的別名,使其更符合用戶的習慣,以方便使用。

  2.可以對不同級別的用戶定義不同的視圖,以保證系統的安全性。

  3.簡化用戶對系統的使用。

 

5、物理設計方法

   關係數據庫系統的優點之一是用戶通常不需要進行數據存儲結構和存取方法的設計。

   物理設計的任務主要是通過對關係建立索引和聚集來實現與應用相關數據的邏輯連接和物理聚集,以改善對數據庫的存取效率。

 1)建立索引

  索引的建立是通過 DBMS 提供的有關命令來實現的。 用以建立索引的那些屬性也應是其所在關係中使用頻率較高的屬性。 建立索引的方式通常有靜態和動態兩種。 靜態建立索引是指應用人員預先建立索引,一旦建立,後續的應用程序均可直 接使用該索引存取數據,它多適合於用戶較多且使用週期相對較長的數據;動 態建立索引是指應用人員在程序內外臨時建立索引,它多適合於單獨用戶或臨 時性使用要求情況。

    2) 建立聚集

  聚集是將相關數據集中存放的物理存儲技術,藉以提高 I/O 的數據命中率而改 善存取速度,其功能由具體的 DBMS 所提供,如 MySQL。 數據聚集結構的一種有效方式是塊結構方式,塊與塊之間由指針連接,一個塊 對應於一個物理分區。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章