ddl:data definition language,資料庫模式定義語言;
dml:data manipulation language,資料操縱語言命令使使用者能夠查詢資料庫以及操作已有資料庫中的資料;
關係正規化學習:
要理解正規化必須先理解一下依賴關係
1.資料依賴
資料依賴指的是通過乙個關係中屬性間的相等與否體現出來的資料間的相互關係,其中最重要的是函式依賴和多值依賴。
2.函式依賴
設x,y是關係r的兩個屬性集合,當任何時刻r中的任意兩個元組中的x屬性值相同時,則它們的y屬性值也相同,則稱x函式決定y,或y函式依賴於x。
3.平凡函式依賴
當關係中屬性集合y是屬性集合x的子集時(y?x),存在函式依賴x→y,即一組屬性函式決定它的所有子集,這種函式依賴稱為平凡函式依賴。
4.非平凡函式依賴
當關係中屬性集合y不是屬性集合x的子集時,存在函式依賴x→y,則稱這種函式依賴為非平凡函式依賴。
5.完全函式依賴
設x,y是關係r的兩個屬性集合,x』是x的真子集,存在x→y,但對每乙個x』都有x』!→y,則稱y完全函式依賴於x。
6.部分函式依賴
設x,y是關係r的兩個屬性集合,存在x→y,若x』是x的真子集,存在x』→y,則稱y部分函式依賴於x。
7.傳遞函式依賴
設x,y,z是關係r中互不相同的屬性集合,存在x→y(y !→x),y→z,則稱z傳遞函式依賴於x。
舉例說明:完全依賴和部分依賴,其他的類似
關係 sb(學號,姓名,系名,系主任,課號,成績)中,、
非主屬性「姓名」僅函式依賴於「學號」,也就是「姓名」部分函式依賴於主碼(學號,課號)而不是完全依賴;
非主屬性「系名」僅函式依賴於「學號」,也就是「系名」部分函式依賴於主碼(學號,課號)而不是完全依賴;
非主屬性「系主任」僅函式依賴於「學號」,也就是「系主任」部分函式依賴於主碼(學號,課號)而不是完全依賴。
第一正規化(1nf--normal form)--設 r 是乙個關係模式,如果 r 中的每乙個屬性 a 的值域中的每個值都是不可分解的,則稱 r 是屬於第一正規化的,記作 r ∈ 1nf;
第二正規化(2nf)---定義如果關係 r ∈ 1nf,並且 r 中每乙個非主屬性完全函式依賴於任乙個候選碼,則 r ∈ 2nf;
第三正規化(3nf)---定義如果關係 r ∈ 2nf,並且 r 中每乙個非主屬性對任何候選碼都不存在傳遞函式依賴,則 r ∈ 3nf 。
第三正規化反例:
sd(學號,姓名,系名,系主任)中,存在如下函式依賴:
學號 → 系名
系名 → 系主任
系名 -\→ 學號
那麼,存在著乙個傳遞函式依賴「學號 → 系主任」成立。所以這個關係不是乙個3nf。
將 sd 分解為
se(學號,姓名,系名)
sf(系名,系主任)此時滿足3nf。
資料庫基礎理論
1.第一正規化 1nf 有主鍵 強調的是列的原子性,未出現在候選鍵中的列即為 非主鍵列 候選鍵有多個 2.第二正規化 2nf 非主鍵列必須完全依賴於候選鍵,而不能是部分依賴,只依賴於候選鍵的一部分 1nf發生在具有關聯鍵的表中,只保留與關係相關的屬性,去除與實體相關的屬性,一般為一對多關係 3.第三...
關聯式資料庫理論 正規化
盡可能減少冗餘 重複資料 沒有插入異常 插入不了,沒滿足復合主鍵的要求 刪除異常 把相同的內容都刪除了 修改異常 修改不完全有剩餘 關係模式中的各關係屬性之間相互依賴,相互制約 的聯絡稱為資料依賴。是關係模式中屬性之間的一種邏輯依賴關係。sn,age,dept 函式依賴於sno u f 設關係模式r...
關聯式資料庫設計理論
關聯式資料庫的模式設計 本章的理論性較強,學習時有無從下手的感覺,在學習時應多加思考,從概念出發去理解理論,前後的理論有較強的聯絡,因此要逐個理解,但對於理論的證明等內容則不必深究,本章重點是函式依賴,無損聯接 保持依賴和正規化的概念。一 關係模式的設計問題 識記 關聯式資料庫 是以關係模型為基礎的...