第一講:
關係:單一的資料結構 — 關係
邏輯結構:二維表
域:某串集合
笛卡爾積:
給定的一組域,域中不同的元素組成新的不同的域。
從d1中隨意拿取乙個元祖與d2中隨意拿出乙個元祖進行組合,那麼所有的組合就是d1d2的
笛卡爾積
笛卡爾積是一種全部的可能,但現實中的情況可能只是笛卡爾積的乙個真子集
元祖:笛卡爾積中的每乙個元素, } 例 (每個元祖有兩個分
量)基數:
集合當中元素的個數,上例中基數為4,用mi表示,m1;
那麼一張二維表中,行是(笛卡爾積的)元祖,列是域
關係:笛卡爾積d1xd2xd3x…的子集叫做在域d1,d2,d3…上的關係 表示為:r(d1,d2,d3…)
r:關係名
n:關係的目或度(就是說有幾個域,也是列的行數)
單元關係就是只有一列
關係的表示:
關係也是乙個二維表,表的每行對應乙個元祖,表的每列對應乙個域
不同的列可以來自同乙個域
屬性:為了加以區分,必須為每列起乙個不同的名字,稱為屬性,也叫屬性列
n目關係型必有n個屬性
碼:候選碼:
若關係中的某一屬性組能夠唯一的表示乙個元祖,則稱該屬性組為候選碼
簡單的情況:候選碼只包括乙個屬性
全碼:關係中所有的屬性組是這個關係模式的候選碼,稱為全碼
主碼(碼):
若乙個關係中有多個候選碼,則認為選定其中乙個為主碼
主屬性:
所有候選碼的屬性稱為主屬性
不包含在任何候選碼中的屬性稱為非主屬性
外碼:設f是基本關係r的乙個或一組屬性,但不是關係r的碼,如果f與基本關係s的主碼k
相對應,則稱f是基本關係r的外碼
基本關係r 為參照關係
基本關係s 為被參照關係或目標關係
基本關係(基本表)的性質:
1.列是同質的
2.不同的列可以來自同乙個域,不同的屬性要給不同的屬性名,每一列稱為乙個屬性
3.列的順序無所謂,列的次序可以交換
4.任意兩個元祖的候選碼不能相同
5.行的順序無所謂,行的次序可以交換
關係模式與關係:
關係模式是型 (表的框架)
關係是值 (表裡面的值)
關係模式是對關係的描述
元祖集合的結構:
屬性構成
屬性來自的域
屬性與域之間的映像關係
關係模式可以形式化的表示為: (第一講 01:18:00)
r(u,d,dom,f)
r 關係名
u 組成該關係的屬性名集合
d 屬性組u中屬性來自的域
dom 屬性向域的映像集合
f 屬性間的資料依賴關係集合
通常可以簡記為
r(u) 或 r(a1,a2,…,an)
r 關係名:
a1 a2 an屬性名
關係系統只有「表」 這一種該資料結構,非關係資料庫系統還有別的資料結構
實體完整性和參照完整性:
關係模型必須滿足的完整性約束條件稱為關係的兩個不變形,應該由關係系統自動支援
使用者定義的完整性:應用領域需要遵循的約束條件,體現了具體領域中的語義約束
使用者定義了就會查,不用就不查
實體完整性:
規則2.1 實體完整性規則
如果屬性a是基本關係r的主屬性,則屬性a不能取空值
規則2.2參照完整性
若屬性(或屬性組)f是基本關係r的外碼,他與基本關係s的主碼k對應,則對於r中每
個元祖在f上的值必須為:
或者取空值(f的每個屬性值均為空值)
或者等於s中某個元祖上的主碼值
目標關係s的主碼ks和參照關係的外碼f必須定義在同乙個域上
資料庫雜記
目錄 設計關聯式資料庫時,遵從不同的規範要求,設計出合理的關係型資料庫,這些不同的規範要求被稱為不同的正規化,各種正規化呈遞次規範,越高的正規化資料庫冗餘越小。目前關聯式資料庫有六種正規化 第一正規化 1nf 第二正規化 2nf 第三正規化 3nf 巴斯 科德正規化 bcnf 第四正規化 4nf 和...
資料庫學習雜記2
今天晚上看了下資料庫,關於的是一些關係模式!看的有點吃力,太抽象了,原本現實中很簡單的問題切搞的那麼複雜。看了一點發現一些特點 資料庫設計同樣有程式方法概念 輸入 外來資料 操作 關係演算 輸出 資料輸出顯示 硬資源 原有資料 就拿學校選課系統來說吧 老師,課程,學院等這些我稱之為硬資料,雖然有的時...
oracle資料庫雜記(典型例子 常用)
1.左連線 m表中的記錄是一定存在的,在a表中可能沒有 align left select from mmm m,aaa a where m.member id a.member id and m.member id xxmguandao01 align align left select from...