<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
問題: 什麼是正規化化設計,為什麼需要反規範化設計 ?
正規化來自來自英文Normal From
。開發過程中要設計一個好的資料庫邏輯關係,必須滿足一定的約束條件,此約束條件形成了開發正規化,分成幾個等級,一級比一級嚴格。
滿足這些正規化理論上可以讓我們的資料庫邏輯結構更加簡潔、清晰。
以下是常見的四種正規化:
舉例:使用者收貨地址 反例:
姓名 | 電話 | 地址 |
---|---|---|
張三 | 138000000 | 北京市-朝陽區-酒仙橋街道 |
正例:
姓名 | 電話 | 省 | 市 | 區 | 街道 |
---|---|---|---|---|---|
張三 | 138000000 | - | 北京市 | 朝陽區 | 酒仙橋街道 |
總結:每列都是不可再分的原子值(一個列不可再分,比如通訊地址和省、市、區)
反例:
產品 ID | 使用者ID | 產品名稱 | 使用者姓名 | 購買數量 | 下單時間 |
---|---|---|---|---|---|
100 | 1 | 微波爐 A102 | 王麻子 | 1 | 2022-08-08 |
正例: 訂單表
產品 ID | 使用者ID | 購買數量 | 下單時間 |
---|---|---|---|
100 | 1 | 1 | 2022-08-08 |
產品表
產品 ID | 產品名稱 |
---|---|
100 | 微波爐 A102 |
使用者表
使用者ID | 使用者姓名 |
---|---|
1 | 王麻子 |
總結:消除列對主鍵的部分函數依賴(對於組合主鍵的部分依賴,比如:產品ID + 使用者ID 為主鍵,存在使用者名稱稱,產品名稱等部分主鍵依賴欄位)
反例:
訂單ID | 使用者ID | 產品ID | 產品名稱 | 產品廠家 |
---|---|---|---|---|
1 | 1 | 100 | 微波爐 A102 | 美的 |
2 | 2 | 200 | 變頻空調 B101 | 海爾 |
正例: 訂單表
訂單ID | 使用者ID | 產品ID |
---|---|---|
1 | 1 | 100 |
2 | 2 | 200 |
商品資訊表
產品ID | 產品名稱 | 產品廠家 |
---|---|---|
100 | 微波爐 A102 | 美的 |
200 | 變頻空調 B101 | 海爾 |
總結:消除欄位對非主鍵的傳遞依賴(就是需要取消訂單中比如商品名稱、商品地址等冗餘資訊)。
在真正的資料庫規範定義上,非常的嚴謹,比如第二正規化(2NF)的定義“若某關係 R 術語第一規格化,且每個非主屬性完全函數依賴於候選碼,則關係 R 屬於第二正規化”。
結論:並不是說完全符合規範化理論的設計是最完美的設計,而是要看具體的業務場景反覆實踐總結最合適的設計。
所謂反規範化設計,就是針對規範化而言的。 1、為了效能和讀取效率而適當的違反對資料庫正規化設計的要求; 3、為了查詢的效能,允許存在部分(少量)冗餘資料。換句話說,反規範化設計就是直接用空間換時間。
ID | 商品名稱 | 商品價格 | 商品描述 | 商品圖片地址 |
---|---|---|---|---|
1 | 微波爐 A101 | $100.99 | 可以加熱食物的微波爐 | tupian.baidu.com |
分類 ID | 分類名稱 |
---|---|
1 | 電器 |
商品ID | 分類ID |
---|---|
1 | 1 |
ID | 商品名稱 | 分類名稱 | 商品價格 | 商品描述 | 商品圖片地址 |
---|---|---|---|---|---|
1 | 1 | 電器 | $100.99 | 可以加熱食物的微波爐 | tupian.baidu.com |
到此這篇關於MySQL 資料庫正規化設計理論總結的文章就介紹到這了,更多相關MySQL 資料庫設計內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45