SQL資料庫設計(一) 需求分析與邏輯設計

2021-07-11 23:35:13 字數 2520 閱讀 7966

今天先來介紹 資料庫設計中的需求分析和邏輯設計(er圖)階段,明天介紹物理設計與維護優化,資料庫設計是非常有意思的:-)

根據系統業務的需要,結合我們所選用的dbms,為這個業務系統構建出最優的資料儲存模型。

並建立好資料庫中的表結構,以及表與表之間的關聯關係的過程.使之能有效的對應用系統中的資料進行儲存,

並可以高效的對已經儲存的資料進行訪問.

優良的資料庫設計
分析資料和屬性各自的特點

了解系統中所要儲存的資料

了解資料的儲存特點

了解資料的儲存週期

實體之間的關係

實體包含的屬性是什麼

那些屬性或屬性的組合可以唯一標示乙個實體

模組屬性

可選唯一標識屬性

儲存特點

使用者模組

使用者名稱,密碼,**,郵箱,身份證號,位址,姓名等

使用者名稱,身份證號,**

隨上線時間增加,需要永久儲存

商品模組

商品編碼,商品名稱,商品描述,商品品類,**商名稱,重量,有效期,**等

(商品名稱,**商名稱),商品編碼

對於下線商品可以歸檔儲存

訂單模組

訂單號,使用者姓名,使用者**,收貨位址,商品編號,商品名稱,數量,**,訂單狀態,支付狀態,訂單型別

訂單號永久儲存(分表,分庫儲存)

購物車模組

使用者名稱,商品編號,商品名稱,商品和**,商品描述,商品分類,加入時間,商品數量

(使用者名稱,商品編號,加入時間),購物車編號

不用永久儲存(設定歸檔,清理規則)

**商模組

**商編號,**商名稱,聯絡人,**營業執照號,位址,法人

**商編號,營業執照號

永久儲存

er圖:邏輯模型得到展示方式

使用er圖對資料庫進行邏輯建模,與dbms無關。

er圖的圖形含義

電商**資料模組er圖

邏輯設計名詞解釋

不滿足三個正規化的設計的資料庫會出現操作異常及資料冗餘

操作異常

資料冗餘:相同的資料在多個地方得到,或者說表中的某個列可以由其他列計算得到。

第一正規化(1nf)

資料庫表中所有欄位都是單一屬性的,不可再分的,這些單一屬性使用基本的資料結構構成的.

第一正規化要求資料庫中所有的表都是二維表.

第二正規化(2nf)
資料庫中的表不存在非關鍵字段對任意候選關鍵的字段的部分函式依賴.

部分函式依賴指存在組合關鍵字中某一關鍵字決定非關鍵字的情況.

所有單關鍵字段的表都符合第二正規化

不滿足第二正規化的示例

解決不滿足第二正規化造成的操作異常問題

第三正規化(3nf)

第三正規化是建立在第二正規化的基礎上的

如果資料庫表不存在非關鍵字段對任意候選關鍵字段的傳遞函式依賴則符合第三正規化

不滿足第三正規化的示例

解決不滿足第三正規化造成的操作異常

bc正規化(bcnf)

在第三正規化的基礎上,資料庫表中如果不存在任何欄位對任意候選關鍵字段的傳遞函式依賴則符合bc正規化如果是復合關鍵字,則復合關鍵字之間也不能存在函式依賴關係.

SQL資料庫實戰需求分析 資料庫設計

create database studentmanager on primary name student data,filename e sql server2008 sqlfull chs microsoft sql server mssql10.mssqlserver mssql data ...

資料庫設計之需求分析

什麼是資料庫設計?簡單來說,資料庫設計就是根據業務系統的具體需要,結合我們所選用的dbms 資料庫管理系統 為這個業務系統構造出最優的資料儲存模型。並建立好資料庫中的表結構及表與表之間的關聯關係的過程。使之能有效的對應用系統中的資料進行儲存,並可以高效的對已經儲存的資料進行訪問。資料庫的步驟 需求分...

資料庫設計之需求分析

需求分析簡單地說就是分析使用者的需求,它是設計資料庫的起點,需求分析結果是否準確反映使用者的實際要求將直接直接影響到後面各階段的設計,並影響到設計結果是否合理和實用。需求分析的任務是通過詳細調查現實世界要處理的物件 組織 部門 企業等 充分了解原系統 手工系統或計算機系統 的工作概況,明確使用者的各...