澳洲
發布時間:2023-10-27 14:26
這一部分介紹了關系數據庫設計的基本原則。徹底的數據庫設計支持有效的開發過程,對于成功的數據庫功能和性能至關重要。
安裝中提供了Demodata示例數據庫,并經常在文檔中用于說明數據庫概念和技術。
設計階段
一旦您了解了關系數據庫的基本結構,就可以開始數據庫設計過程。設計數據庫是一個根據業務要求開發和完善數據庫結構的過程。
數據庫設計包括以下三個階段:
1. 概念性數據庫設計
2. 邏輯性數據庫設計
3. 物理性數據庫設計
一、概念性設計
數據庫設計周期中的第一步是為您的業務定義數據需求?;卮疬@些類型的問題有助于您定義概念性設計:
• 我的業務當前使用哪些類型的信息?
• 我的業務需要哪些類型的信息?
• 我想從這個系統中獲得什么樣的信息?
• 我的業務運行在什么樣的假設基礎上?
• 我的業務有哪些限制?
• 我需要生成什么樣的報告?
• 我將如何使用這些信息?
• 這個系統需要什么樣的安全性?
• 哪些信息可能會擴展?
確定您的業務目標并從將使用數據庫的不同來源收集信息是一個重要的過程。有了這些信息,您可以有效地定義您的表格和列。
二、邏輯設計
邏輯數據庫設計幫助您進一步定義和評估您的業務信息需求。邏輯數據庫設計涉及描述您需要跟蹤的信息以及這些信息之間的關系。
一旦您創建了邏輯設計,您可以與數據庫的用戶驗證設計是否完整和準確。他們可以確定設計是否包含必須跟蹤的所有信息,以及它是否反映了與業務規則一致所必需的關系。
創建邏輯數據庫設計包括以下步驟:
1. 根據您的業務要求定義您需要的表格(如在概念性設計中確定的)。
2. 確定表格之間的關系(有關更多信息,請參見“表格關系”一節)。
3. 確定每個表格的內容(列)。
4. 將表格標準化至至少第三范式(有關更多信息,請參見“標準化”一節)。
5. 確定主鍵(有關更多信息,請參見“鍵”一節)。
6. 確定每列的值。
表格關系
在關系數據庫中,表格通過共享一個公共列相互關聯。這個列存在于兩個或多個表格中,允許您連接這些表格。有三種類型的表格關系:一對一、一對多和多對多。
一對一關系存在于一個表格的每一行與第二個表格中的一個相關行之間。例如,大學可能決定將一個教職員工分配給一個房間。因此,在特定時間內,一個房間只能分配給一個講師。大學還可能決定一個部門只能有一個院長。因此,只有一個人可以成為一個部門的負責人。
一對多關系存在于一個表格的每一行與另一個表格中的多個相關行之間。例如,一個教師可以教授多門課程。
多對多關系存在于一個表格的一行與第二個表格中的多個相關行之間。同樣,那些相關行在第一個表格中有多行。一個學生可以注冊多門課程,而課程可以包含多個學生。
標準化
標準化是一種減少冗余并提高數據庫穩定性的過程。標準化涉及確定特定數據屬于哪個表格以及它與其他數據的關系。您的數據庫設計將導致以數據為驅動,而不是以流程或應用程序為驅動的設計,從而提供更穩定的數據庫實現。
當您對數據庫進行標準化時,您可以消除以下列:
• 包含超過一個非原子值的列。
• 包含重復或重復的列。
• 不描述表格的列。
• 包含冗余數據的列。
• 可以從其他列派生的列。
第一范式
第一范式中的列具有以下特征:
• 它們只包含一個原子值。
• 它們不會重復。
第一范式的第一個規則是您必須將重復的列或包含多個值的列移至新表格。
標準化到第一范式的表格具有幾個優點。例如,在示例數據庫的計費表中,第一范式執行以下操作:
• 允許您為每個學生創建任意數量的交易,而無需添加新列。
• 允許您快速查詢和排序交易數據,因為您只搜索一個列(交易號)。
• 使用磁盤空間更有效,因為不存儲空列。
第二范式
當表格處于第一范式中并且僅包含提供有關表格主鍵的信息的列時,該表格位于第二范式中。
為了強制執行標準化的第二條規則,您必須將不依賴于當前表格的主鍵的列移動到新表格中。
如果一個表格包含冗余數據,那么它會違反第二范式。這可能導致不一致的數據,從而使您的數據庫缺乏完整性。例如,如果一個學生更改了她的地址,那么您必須更新所有現有行以反映新地址。任何帶有舊地址的行都會導致不一致的數據。
為解決這些差異,識別出在添加交易時保持不變的數據。像“學生姓名”或“街道”這樣的列不屬于交易,并且不依賴于主鍵“學生ID”,因此將此信息存儲在“學生”表格中,而不是交易表格中。
標準化到第二范式的表格也具有幾個優點。例如,在示例數據庫的計費表中,第二范式允許您執行以下操作:
• 僅在一行中更新學生信息。
• 刪除學生交易而不消除必要的學生信息。
• 使用磁盤空間更有效,因為不存儲重復或冗余數據。
第三范式
當一個表格只包含獨立列時,該表格處于第三范式中。
標準化的第三條規則是您必須刪除可以從現有列派生的列。例如,對于一個學生,如果您已經有了出生日期列,那么您不必包含年齡列,因為您可以從出生日期計算年齡。
處于第三范式的表格只包含必要的列,因此它使用磁盤空間更有效,因為不存儲不必要的數據。
總之,第一、第二和第三范式的規則規定每個列值必須完整地是主鍵的事實,除此之外沒有其他事實。
鍵
ODBC鍵是表格的外鍵完整性(RI)約束所定義的列或一組列。換句話說,鍵或鍵的組合充當行數據的標識符。
有關引用完整性和鍵的更多信息,請參閱高級操作指南。
三、物理設計
物理數據庫設計是邏輯設計的細化;它將邏輯設計映射到關系數據庫管理系統。在這個階段,您要檢查用戶如何訪問數據庫。數據庫設計周期的這一步涉及確定以下類型的信息:
• 您通常將使用的數據。
• 需要為數據訪問創建索引的列。
• 需要靈活性或增長空間的區域。
• 是否通過去標準化數據庫來提高性能。(要去標準化您的數據庫,您需要重新引入冗余以滿足性能要求。)有關更多信息,請參見標準化。
如果你對此還有疑問,或者有更多關于學業輔導方面需求的話,可以添加微信號:hmkt131聯系海馬課堂的Joye老師哦。