資料庫關係模式設計之規範形式2020 05 17

2021-10-06 05:45:45 字數 1561 閱讀 1081

【函式依賴】:

1nf:關係模式r(u)中關係的每個分量都是不可分的資料項(原子),記作r(u)∈1nf。

示例:star(name,address(city,street))不屬於1nf,因為分量不是原子。

特徵:**行列都是單一的數值。關係中沒有復合屬性,多值屬性和組合。

————

轉換成第一正規化:star(name,address)或者star(name,city,street)。

2nf:r(u)∈1nf且u中的每一非主屬性完全函式依賴於候選鍵,記作r(u)∈2nf。

候選鍵:完全決定所有屬性的屬性或者屬性組。

非主屬性:不包含在候選鍵中的屬性。

完全函式依賴:如果x決定y,x的任何真子集x』不能決定y。

示例:r(s#,sn,sd,cn,g)

其中,s#:學號,sn:姓名,sd:班級,cn:課程,g:成績。

函式依賴:s# —>sn, s# —>sd, —>g

候選鍵:,非主屬性:sn,sd

因為部分決定sn,sd,所以r不屬於2nf。

————

可以將其分解:r1(s#,sn,sd)r2(s#,cn,g),則r1∈2nf,r2∈2nf。

3nf:r(u,f)∈2nf,且r中不存在這樣的情況:候選鍵x,屬性組y包含u和非主屬性a,且a不屬於x,a不屬於y,y不包含x,y不決定x,使得x—>y,

y—>a成立,那r(u)屬於第三正規化,記作r(u)∈3nf。

特徵:沒有傳遞函式依賴。

示例:學生(學號,系號,系主任)

候選鍵:學號,非主屬性:系主任,

傳遞依賴:學號—>系號,系號—>系主任,無部份依賴

所以滿足2nf,不滿足3nf。

注:如果滿足3nf,那麼必定滿足2nf。反之,則不然。

————

關係模式分解成3nf,

示例:r(a,b,c,d,e,f,g)

函式依賴集合

候選鍵a,存在傳遞依賴,所以不是第三正規化。

分解規則:將每乙個函式依賴單獨組成乙個關係

ρ=則每乙個模式都屬於第三正規化。

也可以合併一些關係:

ρ=【多值依賴】:

函式依賴是多值依賴的特例,簡單說就是一組x的值,有一組y對應,且y值可以替換。

示例:r=

則有c—>—>hr,t—>—>hr,但不存在c—>—>h,c—>—>r

說明,同一門課程huo同一教師對同一批學生可以在不同時間,不同地點上課。

第四正規化消除了非空屬性對候選鍵以外屬性的多值依賴,如果有多值依賴,那麼一定依賴於候選鍵。

定理:若r∈4nf,那麼必有r∈bcnf。

若r上沒有多值依賴,僅存在函式依賴,則若有r∈bcnf,即有r∈4nf,反之,若r∈4nf,也有r∈bcnf。

然後還有w4nf,阿姆斯特朗公理,看不懂了。。。跪求大神簡單講下。

資料庫基礎概論 關係模式設計之規範形式

1 1nf 若關係模式r u 中關係的每個分量都是不可分的資料項 值 原子 則稱r u 屬於第一正規化。注 第一正規化消除的是復合屬性 2 2nf 若r u 滿足1nf 並且u中的每一非主屬性完全依賴於候選鍵 則稱r u 滿足第二正規化。注 第二正規化消除了部分依賴 去掉部分飛非受控冗餘 3 3nf...

關係 關係模式 關聯式資料庫

表student 在關係模型的術語中,關係用來指代表,而元組用來指代行。類似地,屬性指代的是表中的列。在表student中有五個屬性 sno sname s sage和sdept。我們用關係例項這個術語來表示乙個關係的特定例項,也就是所包含的一組特定的行。表student的例項中有5個元組,對應5個...

資料庫設計規範

使用明確 統一的標明和列名,例如 school,schoolcourse,courceid。資料表名使用單數而不是複數,例如 studentcourse,而不是studentcourses。資料表名不要使用空格。資料表名不要使用不必要的字首或者字尾,例如使用school,而不是tblschool,或...