Download presentation
Presentation is loading. Please wait.
1
第二章 規劃關連式資料庫
2
章節概覽 規劃關連式資料庫前的準備工作 開始規劃關連式資料庫 資料庫的三個正規化 資料表與資料表的關連建立 資料庫正規化的檢查 減少儲存空間
降低輸入錯誤 增進資料庫效率 規劃資料庫目的
3
2.1 規劃關連式資料庫前的準備工作 第一步驟:系統使用者的訪談 第二步驟:可行性分析 第三步驟:將系統所需儲存的資訊欄位寫出來
第四步驟:資料庫的正規化 正規化 資料表關聯 商業邏輯規則與限制式
4
2.1.1 第一步驟:系統使用者的訪談 系統建立前的準備工作 主要了解應用系統的主要功能為何 了解商業流程的走向
5
2.1.2 第二步驟:可行性分析 分析完成這個專案所需耗費的時間與所使用的技 術 將專案所需的技術列出
依照訪談內容評估需要的技術及估計完成的時間 (如:甘特圖)
6
2.2 開始規劃關連式資料庫 第三步驟:將系統所需儲存的資訊欄位寫出來 第四步驟:資料庫的正規化
7
第三步驟:將系統所需儲存的資訊欄位寫出來
將可能會用到的資料列舉出來 設定資料的格式與資料型別 可利用實際的報表、表單、歷史資料
8
資料表列法 Notation : 主鍵有底線 Table columns Table name Customer(CustomerID, Phone, Name, Address, City, State, ZipCode) Primary key is underlined CustomerID Phone LastName FirstName Address City State Zipcode Johnson Martha 125 Main Street Alvaton KY 42122 Smith Jack 873 Elm Street Bowling Green KY 42101 Washington Elroy 95 Easy Street Smith’s Grove KY 42171 Adams Samuel 746 Brown Drive Alvaton KY 42122 Rabitz Victor 645 White Avenue Bowling Green KY 42102 Steinmetz Susan 15 Speedway Drive Portland TN 37148 Lasater Les 67 S. Ray Drive Portland TN 37148 Jones Charlie 867 Lakeside Drive Castalian Springs TN 37031 Chavez Juan 673 Industry Blvd. Caneyville KY 42721 Rojo Maria 88 Main Street Cave City KY 42127
9
第四步驟:資料庫的正規化 將大資料表切割成小資料表 資料表與資料表之間有關連性 用來維護資料的一致性
10
2.3 資料庫的三個正規化 資料庫的第一正規化: 避免重覆群組 First Normal Form , 1NF
資料庫的第二正規化: 欄位與主鍵有相依性與建立關連 Second Normal Form , 2NF 資料庫的第三正規化: 檢查欄位與欄位間是否有從屬關係 Third Normal Form , 3NF E.F. Codd 1970年
11
資料庫的第一正規化:避免重覆群組 避免重覆群組 每個資料表要找尋主索引鍵 利用主索引鍵可以將資料表中唯一的一筆資料取 出
12
1NF 範例: 原始資料: 訂單 (訂單編號 ,訂單日期, 項目1, 書籍名稱1,價格1,數量1, 項目2, 書籍名稱2,價格2,數量2, 項目3 ,書籍名稱3,價格3,數量3… ,送貨地點,連絡人) 1NF資料(1張訂單有很多筆訂貨資料) 訂單 (訂單編號 , 訂單日期 , 總金額 , 送貨地點 , 連絡人) 訂單項目表 (訂單編號 , 項目編號 , 書籍名稱 , 價格 , 數量) 一對多關聯
13
資料庫的第二正規化:欄位與主鍵有相依性 與建立關連
主索引鍵與其他欄位之間,有沒有直接的關連性 若沒有直接關連性,必需要拆成另一個資料表 非PRIMARY KEY的欄位 不能 只與PK中的部份欄位 有關係
14
2NF 範例: ∞ 1 原始資料: 訂單項目表 (訂單編號 , 項目編號 , 書籍名稱 , 價格 , 數量) 2NF資料:
訂單項目表 (訂單編號 , 項目編號 , 書籍編號 , 數量) 書籍資料表 (書籍編號 ,書籍名稱 , 價格 ) ∞ 一對多關聯 1
15
2.4 欄位與主鍵有相依性與建立關連
16
一對一的資料表關連性
17
一對多的資料表關連性
18
建立關連的方式
19
關連的建立成功
20
多對多的資料表關連性(一)
21
多對多的資料表關連性(二)
22
多對多的資料表關連性(三)
23
2.5 資料庫正規化注意事情 2.5.1 資料庫的第三正規化:檢查欄位與欄位間是否有從屬關係 非主索引鍵的欄位間不應該有相依的從屬關係
24
3NF 範例: 1 ∞ 原始資料: 訂單 (訂單編號 , 訂單日期 , 總金額 , 送貨地點 , 連絡人) 3NF資料:
客戶 ( 客戶編號 ,連絡人 , 送貨地點 ) 訂單 (訂單編號 ,訂單日期 , 總金額 , 客戶編號) 1 一對多關聯 ∞
25
2.5.2 資料庫正規化要注意的事項 避免過度的正規化 正規化後應試著新增、修改、刪除幾筆資料看看
26
本章學習成果 一個專案在開發時的步驟。 資料庫正規化的目的。 第一正規化的目的。 第二正規化的目的。 第三正規化的目的。
資料庫的正規化適可而止,因為在現實社會中 ,還要搭配商業邏輯規則。
Similar presentations