關係資料理論知識習題
一、理解並給出下列術語的定義
二、有關係模式r(a,b,c,d,e),回答下面各個問題:
三、考慮關係模式r(a,b,c,d),寫出滿足下列函式依賴時r的碼,並給出r屬於哪種正規化(1nf、2nf、3nf或bcnf)。
函式依賴、部分函式依賴、完全函式依賴、傳遞依賴、候選碼、主碼、外碼、全碼(all-key)、1nf、2nf、3nf、bcnf。
函式依賴
設r(u)是屬性集上的關係模式,x,y是u的子集。若對於r(u)的任意乙個可能的關係r,r中不可能存在兩個元組在x上的屬性值相等,而在y上的屬性值不等,則稱x函式確定y,或y函式依賴於x,記作x→y。
部分函式依賴
在r(u)中,如果x→y,但y不完全函式依賴於x,則稱y對x部分函式依賴。
完全函式依賴
在r(u)中,如果x→y,並且對於x的任何乙個真子集x』,都有y不函式依賴於x』,則稱y對x完全函式依賴。
傳遞依賴
在r(u)中,如果x→y(y不屬於x),x不函式依賴於y,y→z(z不屬於y)則稱z對x傳遞函式依賴。 u
是完全函式依賴於k,而不是部分依賴於k。若u部分依賴於k,則k稱為超碼。候選碼是最小的超碼。
候選碼
設k為r中的屬性或者屬性組合,若u完全函式依賴於k,則k為r的候選碼。
主碼
若候選碼多餘乙個,則選定其中的乙個為主碼。
外碼
關係模式r中屬性或屬性組x並非r的碼,但x是另乙個關係模式的碼,則稱x是r的外部碼,也稱外碼。
全碼
關係模式r中整個屬性組是碼,稱為全碼。
1nf
若關係模式r的每乙個分量是不可再分的資料項,則關係模式r屬於第一正規化(1nf)。
2nf
若r∈1nf,且每乙個非主屬性完全函式依賴於任何乙個候選碼,則r∈2nf。
3nf
設關係模式r∈1nf,若r中不存在這樣的碼x,屬性組y及非屬性組z(z不是y的子集),使得x→y,y→z成立(x不函式依賴於y),則稱r∈3nf。
bcnf
關係模式r∈1nf,若x→y且y不屬於x時,x必含有碼,則r∈bcnf。
1、若a是r的候選碼,具有函式依賴bc→de,那麼在什麼條件下r是bcnf?
由定義得,屬性組bc含有碼時,r是bcnf。bcnf的所有決定性因素都含有碼,所以bc應該含有碼。
2、如果存在函式依賴a→b,bc→d,de→a,列出r所有碼。r
的所有碼:ace、bce、cde。
由函式依賴關係a→b,bc→d,de→a可得,a可以決定b,加上c決定d,再加上e可得r,故第一組ace。由bc可決定d,加上e可決定a,亦可得r,第二組bce。由de可決定a,b傳遞依賴於de,加上c可得r,第三組即cde。
3、如果存在函式依賴a→b,bc→d,de→a,r屬於3nf還是bcnf。r
屬於3nf
,不屬於
bcnf
。abcde
都是主屬性,bcnf中不存在主屬性對碼的部分依賴。在r中的函式依賴中決定性因素不包含碼。
碼:ab;
1nf(存在d對ab的部分函式依賴)。
碼:d;2nf(不存在部分依賴,存在傳遞依賴)。
碼:abd、bcd;3nf(不存在非主屬性對碼的部分依賴或傳遞函式依賴,但a是決定因素不含碼)。
碼:b;2nf(不存在部分依賴,存在傳遞依賴)。
碼:abd;bcnf(不存在部分依賴和傳遞依賴)。
判斷依據(幾個正規化的定義及規範過程):
若關係模式r的每乙個分量是不可再分的資料項,則關係模式r屬於第一正規化(1nf)。
2nf:若r∈1nf,且每乙個非主屬性完全函式依賴於任何乙個候選碼,則r∈2nf。
3nf:設關係模式r∈1nf,若r中不存在這樣的碼x,屬性組y及非屬性組z(z不是y的子集),使得x→y,y→z成立(x不函式依賴於y),則稱r∈3nf。
bcnf
:關係模式r∈1nf,若x→y且y不屬於x時,x必含有碼,則r∈bcnf。
資料庫六(關係資料理論)
一 資料依賴 乙個關係內部屬性與屬性之間的約束關係 型別 函式依賴 fd 和多值依賴 mvd 資料依賴對關係模式的影響 資料冗餘太大 更新異常 插入異常 刪除異常 二 規範化 乙個低一級正規化的關係模式可以通過模式分解轉為若干高階正規化的模式集合。函式依賴 乙個關係表中屬性之間的聯絡 設有乙個關係模...
資料庫 四 關係資料理論
關係內部屬性與屬性之間的一種約束關係,通過屬性間值的相等與否體現。好的模式應 避免插入 刪除 更新異常,資料冗餘盡量少。r u 是屬性集u上的關係模式,x y是u的子集,在r中任意乙個可能的關係r中,不可能存在兩個元組,其在x上的屬性值相等,而在y上的屬性值不等,則稱函式x確定y 或y函式依賴於x記...
資料庫之關係資料理論
常用正規化 關聯式資料庫知道了,再來理解正規化。正規化是關聯式資料庫關係模式規範化的標準,從規範化的寬鬆到嚴格,分為不同的正規化,通常使用的有第一正規化。第二正規化 第三正規化及bc正規化。正規化是建立在函式依賴基礎上的。函式依賴 如果乙個表中某乙個欄位y的值是由另外乙個欄位或一組欄位x的值來確定的...