數據庫設計的一般步驟_zhongliwen1981的專欄-CSDN博客_數據庫設計步驟
一、數據庫設計的步驟
(1)了解功能需求
在設計數據庫之前,設計人員必須要先了解系統的功能需求。這里可以通過閱讀產品需求規格說明書,與項目相關人員(比如項目經理、客戶等)進行充分溝通。
(2)定義實體
了解系統功能需求之后,設計人員通過分析系統功能定義出系統有哪些實體。比如:到酒店開房。這里應該至少包含兩個實體:客人和房間。
在定義出實體以后,我們還要定義實體的屬性。例如:
客人:姓名、性別、手機號碼、證件號碼、證件類型(身份證、駕駛證、通行證等等)…
房間:房號、房間類型(單人房、雙人房、豪華房等等)、入住時間、離開時間、房間狀態(已入住、未入住)…
(3)繪制E-R圖
定義好實體之后,接下來我們應該根據實體以及實體之間的關系繪制出E-R圖。比如:

長方形代表實體,橢圓形代表實體的屬性,菱形代表實體之間的關系。
(4)把E-R圖轉換成模型
繪制出E-R圖之后,我們需要根據它來構建物理模型。構建物理模型可以使用一些工具,比如目前比較流行的PowerDesigner。
(5)檢查模型
完成模型設計后,我們還要檢查模型是否滿足第三范式的要求。如果不滿足就需要重新對模型進行修正,直到滿足第三范式的要求為止。
比如說,上面的模型並沒有滿足第三范式的要求。因為customer和room這兩個表都存在一些與該表沒有直接關系的字段。如果要滿足第三范式要求,就需要把模型修改為:
上面模型增加了三個表,分別是identity_type(證件類型表)、register(入住登記表)、room_type(房間類型表),經過對模型的修正后,已經滿足第三范式的要求。
(5)根據模型定義數據庫
不同數據庫的SQL命令可能會有小小差別。比如我們這里使用了MySQL數據庫。
定義數據庫的命令:DDL
至此,數據庫設計階段的任務已經完成。
二、總結
數據庫設計其實並不難,本人覺得比較難的地方在於開始的分析階段。就是如何根據客戶需求把數據庫里面的實體,以及實體之間的關系分析出來。所以,在數據庫設計階段,我們應該把重點放在業務需求的分析上,准確把握客戶的需求,這樣才能夠設計出一套比較好的數據庫。
————————————————
版權聲明:本文為CSDN博主「老鍾私房菜」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/zhongliwen1981/article/details/91871895
