MySQL資料庫的設計

2021-10-06 01:39:09 字數 1320 閱讀 7456

資料庫設計

資料庫設計是指根據使用者的需求,在某一具體的資料庫管理系統上,設計資料庫的結構和建立資料庫的過程。資料庫系統需要作業系統的支援。

設計技術

①明確使用者需求

②重視資料維護

③增加命名規範性

④充分考慮資料庫優化與效率的問題

⑤不斷調整資料之間的關係

⑥合理使用索引

設計資料庫的步驟

充分了解需求

標識實體:具體存在的物件,名詞

標識屬性

標識關係

標識關係

一對多:主鍵和非主鍵之間的關係,在多的一方建立乙個字段作為外來鍵指向一的一方的主鍵。

多對多:建立乙個第三種表,中間表至少需要2個字段分別作為外來鍵指向多對多雙方的各自主鍵。

一對一:唯一外來鍵對應:假設一對一的雙方是一對多的關係,在多的一方建立外來鍵指向一的一方的主鍵,需要在外鍵上新增乙個unique約束。

主鍵對應:將一對一的雙方的主鍵建立對映。

三大正規化:

第一正規化

消除乙個字段包含多個資料庫值,消除乙個記錄包含重複的組(單獨的一列包含多個專案),即可滿足1nf。符合1nf的關係中的每個屬性都不可再分。如下表所示的情況,就不符合1nf的要求。

第二正規化

消除部分依賴性即可轉化為2nf。部分依賴性表示乙個記錄中包括的字段只依賴於主鍵的一部分。解決部分依賴性的最簡單方法是將復合主鍵分成兩部分,每一部分表示乙個單獨的表。其改進是,2nf在1nf的基礎之上,消除了非主屬性對於碼的部分函式依賴。

第三正規化

消除可傳遞依賴性即可滿足3nf。可傳遞依賴性表示記錄中至少乙個值不依賴主鍵,而是依賴於這個記錄中的另乙個字段。

符合3nf要求的資料庫設計,基本上解決了資料冗餘過大,插入異常,修改異常,刪除異常的問題。當然,在實際中,往往為了效能上或者應對擴充套件的需要,經常 做到2nf或者1nf,但是作為資料庫設計人員,至少應該知道,3nf的要求是怎樣的。

資料模型三要素

資料庫結構的基礎是資料模型,是用來描述資料的一組概念和定義。

資料模型三要素是資料結構、資料操作、資料的約束條件。

e-r模型:是實體-聯絡模型的簡稱。所採用的3個主要概念是實體、聯絡、屬性。

實體:現實世界中可以區別其它物件的物體或事件。

聯絡:實體的聯絡分為實體內部的聯絡和實體與實體之間的聯絡。

兩個不同實體之間的聯絡:

(1)一對一:指實體集e1中的乙個實體最多隻與實體集e2中的乙個實體相聯絡。(1:1)

(2)一對多:表示實體集e1中的乙個實體可與實體集e2中的多個實體相聯絡。(1:n)

(3)多對多:表示實體集中e1中的多個實體可與實體集e2中的多個實體相聯絡。(m:n)

mysql 資料庫設計 MySQL 資料庫設計總結

本文由雲 社群發表 規則 1 一般情況可以選擇 myisam 儲存引擎,如果需要事務支援必須使用 innodb 儲存引擎。注意 myisam 儲存引擎 b tree 索引有乙個很大的限制 參與乙個索引的所有欄位的長度之和不能超過 1000 位元組。另外 myisam 資料和索引是分開,而 innod...

mysql考勤資料庫設計 mysql 資料庫設計

正規化 大概有8種正規化,遵循前三個一般資料庫就沒有問題 1 列不能再拆分 比如一列中有姓名,又有性別,就是沒有遵循這一條正規化 order id product id price quantity product name 111 11 123 good pen order id 和 produc...

mysql相簿資料庫設計 mysql資料庫的設計

資料庫的設計有乙個嚴謹的流程,根據流程製作乙個完整的資料庫,可以省去很多的時間,也可以最大程度上與客戶的想法契合。需求分析階段 分析客戶的業務和資料處理需求 概要設計階段 設計資料庫的e r模型圖,確認需求資訊的正確和完整 詳細設計階段 應用三大正規化審核資料庫結構 編寫階段 物理實現資料庫,編碼實...