日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL学习笔记(6)之设计范式

發布時間:2023/12/31 数据库 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL学习笔记(6)之设计范式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

設計范式(NF?=?Normal?Format

范式:規范的格式。

范式是設計關系數據庫必須遵守的規則。

如果我們滿足了設計范式的要求,則數據庫會簡潔,結構清晰。

反之,會出現數據冗余,還有插入、刪除、修改數據出現異常。

?

?設計范式種類:1NF2NF3NFBCNF(巴德斯科范式)、4NF5NF(完美范式)。

1NF是最寬松的,依次遞增限制越大。

一般數據庫只需要滿足到3NF就可以了。

?

11NF(第一范式):字段的原子性

要求:數據是二維表,每一列都不能在分割,屬性不能再分割,字段保證原子性。

不滿足1NF的數據庫,則為非關系型數據庫。


不滿足1NF的2個例子:

name
telage
小明

13988774444,01115945612

1
小紅168123147250


name手機,座機age
小明13988774444011159456121
小紅16812314725,無0


解決辦法:

name手機座機age
小明13988774444011159456121
小紅168123147250


22NF(第二范式):消除部分(不完全)依賴

要求:滿足1NF的前提下,消除字段對主鍵的部分依賴,從而完全依賴于主鍵。

依賴:如果字段A一旦確定,則可以指出B字段的值。

部分(不完全)依賴:依賴其中某個部分的值。

????

????????不滿足2NF的例子:

學生

課程

老師姓名

老師學歷

課程教材

上課教室

上課時間

小明二年級語文上張三研究生二年級語文上冊1028:00
小紅五年級數學上李四博士五年級數學上冊30616:00

????????一個課程,一定指定了某個教材,一年級語文上肯定用的是《一年級語文上冊》,那么就有課程推出教材。課程決定了教材,這就叫做部分依賴。


????????解決辦法,拆分成二個或者若干個表:

學生課程老師老師學歷上課教室上課時間
小明二年級語文上張三研究生1028:00
小紅五年級數學上李四博士30616:00


課程

教材

二年級語文上二年級語文上冊
五年級數學上五年級數學上冊


33NF:消除傳遞依賴

要求:滿足2NF的前提下消除傳遞依賴。

當表里存在不只一類獨立實體,數據也可能存在冗余,在插入、修改、刪除、時可能出現混亂的情況。

?

↓解決辦法:拆分成3個表,利用主鍵建立關系。

學生學號

學生姓名

學生課程

教師

110小明001578
911小紅005561


課程ID

課程名稱教材名稱

001

二年級語文上

二年級語文上冊

005

五年級數學上

五年級數學上冊


教師ID

老師姓名

老師學歷

578張三研究生
561李四博士


4BC范式(BCNF):符合3NF,并且主屬性不依賴于主屬性

若關系模式屬于第一范式,且每個屬性都不傳遞依賴于鍵碼,則R屬于BC范式。

通常BC范式的條件有多種等價的表述:每個非平凡依賴的左邊必須包含鍵碼;每個決定因素必須包含鍵碼。

BC范式既檢查非主屬性,又檢查主屬性。當只檢查非主屬性時,就成了第三范式。滿足BC范式的關系都必然滿足第三范式。

還可以這么說:若一個關系達到了第三范式,并且它只有一個候選碼,或者它的每個候選碼都是單屬性,則該關系自然達到BC范式。

一般,一個數據庫設計符合3NFBCNF就可以了。在BC范式以上還有第四范式、第五范式。

?

?

5第四范式:要求把同一表內的多對多關系刪除。

?

6第五范式:從最終結構重新建立原始結構。


轉載于:https://blog.51cto.com/chenhaolinux/1710794

總結

以上是生活随笔為你收集整理的MySQL学习笔记(6)之设计范式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。