資料庫雜記

2021-10-05 03:26:21 字數 1871 閱讀 8627

第一講:

關係:單一的資料結構 — 關係

邏輯結構:二維表

域:某串集合

笛卡爾積:

給定的一組域,域中不同的元素組成新的不同的域。

從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...