資料庫 筆記 函式依賴

2021-10-09 05:04:39 字數 2110 閱讀 8265

函式依賴的推導規則

完全函式依賴與部分函式依賴

傳遞函式依賴

候選鍵在函式依賴中的定義

總結定義

函式依賴是關係模式中,屬性之間的邏輯依賴關係

定義如下:

設關係r(u,f),u是屬性集,f是函式依賴集,令x、y是u的兩個子集

對於任意r的乙個關係r,x的每乙個具體值,y都有唯一值與之對應

則,x決定函式y,或y函式依賴於x,記作x→y(x是自變數,y是因變數,乙個x只能得到乙個y)

若x→y且y→x,則x↔y

不依賴則是在箭頭上畫上斜線

簡單說,若x→y,那麼在關係r上任意兩個元組,若ti[x] = tj[x],那麼ti[y] = tj[y],在這裡就要聯想到函式的單對映和雙映**

函式依賴可以理解為屬性之間的一種約束條件,它能夠用於判斷建立的關係表是否合理

平凡函式依賴

若屬性集y是x的子集,則必然存在函式依賴x→y,這種函式依賴就是平凡的函式依賴,其他型別的函式依賴就是非平凡的函式依賴

這裡是對屬性集是否包含而言的,不是指屬性的域的包含關係

函式依賴於屬性之間聯絡的關係

當x與y有1:1聯絡時,一定有x↔y

當x與y有m:1聯絡時,有x→y

當x與y有m:n聯絡時,x、y之間不存函式依賴

設f是關係模式r的函式依賴集,x、y是屬性集u的子集,x→y是乙個函式依賴,若在f中,能夠用其他函式依賴關係推導出x→y,則x→y為f的邏輯蘊涵,或f邏輯蘊涵x→y,記作f|=x→y

f是r的函式依賴集,被f邏輯蘊涵的函式依賴的集合稱為f的閉包

記作f+

f+=

除了函式依賴集的閉包外,屬性集也存在閉包運算,如下

屬性集x的閉包x+ =

定律名稱

條件結果

自反律y⊆x⊆u

x→y增廣律

x→y,z⊆u

xz→yz

傳遞律y→y,y→z

x→z合併律

x→y,x→z

x→yz

偽傳遞律

x→y,yw→z

xw→z

分解律x→y,z⊆y

x→z復合律

x→y,w→z

xw→yz

以上的xy這樣的形式,不是離散中的集合求交集,而是將他們合併

此外如:y⊆x,是y中的屬性是x中屬性的子集,如y(姓名,性別),x(姓名、性別、年齡),那麼y就⊆x

若x→y,且對於x的任意真子集x』,都不滿足x』→y,則y對x完全函式依賴,記作若x→y,且對於x的任意真子集x』,存在x』→y,則y對x部分函式依賴,記作

元組中其它屬性對主鍵或其候選鍵都是完全函式依賴的

上述的x的子集,是指x屬性集中的部分屬性,而不是屬性域的子集

x→y,且y→x不成立,而有y→z(其中y不屬於x,z不屬於y),則有z對x傳遞函式依賴,記作

為什麼不能有y→x,是因為,如果這個條件成立,x→z就不是傳遞得來的,而是直接能得到的

屬於關係不存在的限制也是一樣,是為了排除平凡函式依賴

定義

u是關係r的屬性集,若屬性集x→u在r上成立,x是r的乙個超鍵

在x是超鍵的基礎上,若x的任一真子集x』 都有

x』 →u不成立,那麼x是r上的乙個候選鍵

由此可知,其他所有屬性對於候選鍵都是完全函式依賴的

如何在函式依賴中尋找候選鍵

對屬性進行分類

函式依賴的主要作用是,在建立號關

系資料 表之後,可以通過它來對資料表進行檢查,看是否符合規則

完全函式依賴域部分函式依賴的區別在於x的子集能否滿足x』→y

在求解函式依賴的閉包時,一定要全面,不能忘記f本身

資料庫 關係模式函式依賴

關聯式資料庫邏輯設計 針對具體問題,如何構造乙個適合於它的資料模式 資料庫邏輯設計的工具 關聯式資料庫的規範化理論 關係模式由五部分組成,即它是乙個五元組 r u,d,dom,f r 關係名 u 組成該關係的屬性名集合 d 屬性組u中屬性所來自的域 dom 屬性向域的映象集合 f 屬性間資料的依賴關...

資料庫複習 資料的函式依賴

r u 是屬性集u上的關係模式,x,y是u的乙個子集,r是r u 中的任意給定的關係,對於r中的任意兩個元組s和t,當s x t x 時,一定有s y t y 稱為y函式依賴於x 記為 x y x被稱為決定因素 每乙個x只能有乙個y 如果y不是x的子集,則稱為非平凡依賴,否則平凡依賴 在關係r中,k...

資料庫快取依賴

更多的時候,我們的伺服器效能損耗還是在查詢資料庫的時候,所以對資料庫的快取還是顯得特別重要,上面幾種方式都可以實現部分資料快取功能。但問題是我們的資料有時候是在變化的,這樣使用者可能在快取期間查詢的資料就是老的資料,從而導致資料的不一致。那有沒有辦法做到,資料如果不變化,使用者就一直從快取中取資料,...