天天看點

資料庫筆記二(關系資料庫)

一、關系資料結構及形式化定義:

關系:

笛卡爾積:給定一組域D1、D2…、Dn,其笛卡爾積為

D1XD2X...XDn = {(d1,d2,…,dn)|di∈Di}

基數:即為元組個數

關系:D1XD2X...XDn的子集叫做在域D1...Dn上的關系

表示為R(D1,D2,...,Dn)

n目關系必有n個屬性

候選碼:某一屬性能唯一辨別一個元組,則稱該屬性為候選碼

全碼:關系模式中所有屬性都是候選碼

主碼:若一個關系有多個候選碼,則標明一個為主碼

主屬性:候選碼的諸屬性均為主屬性

三類關系:

基本關系(基本表):實際存在的表

查詢表:查詢結果對應的表

視圖表:由基本表或其他視圖表導出的表,是虛表

關系的性質:

列是同質的,同一列來自同一域

不同列可來自同一域

列的順序和行的順序無所謂

任意兩個元組不能完全相同

每個分量必須取原子值,不可再分

關系模式:

關系模式是型(内涵),關系是值(外延)

關系模式是對關系的描述

R(U,D,DOM,F):關系名(屬性名集合,域,屬性向域的映像集合,屬性間的依賴關系集合)

關系資料庫:在一個給定的應用領域,所有關系的集合構成一個關系資料庫

二、關系操作:

常見關系操作:

查詢:選擇、投影、連接配接、并、交、差、除

更新:插入、删除、修改

關系代數語言:對關系的運算倆表達查詢要求ISBL

關系演算語言:用謂詞來表達查詢要求,包括元組關系演算語言(APLHA、QUEL)和域關系演算語言(QBE)

具有關系代數語言和關系演算語言雙重特點:SQL

關系代數:一種抽象的查詢語言,對關系的運算來表達查詢

三要素(運算對象、運算符、運算結果)

選擇:σ;投影:π;連接配接:

象集:給定一個關系R(X,Z),X和Z為屬性組

當t[X] =x時,x在R中的向集為Zx = {t[Z]|t∈R,t[X]=x}

選擇:sF(R)={t | t Î R , F(t) = ‘真’}

投影:PA(R) = { t[A] | tÎR } , AÍR

條件連接配接:R  S = { r  s | rÎR Ù sÎS Ù r[A] q s[B] }

自然連接配接:從兩個關系的廣義笛卡兒積中選取在相同屬性列B上取值相等的元組,并去掉重複的行。

外連接配接:

除:

  • 給定關系R(X,Y)和S(Y,Z),其中X,Y,Z為屬性組。R中的Y與S中的Y可以有不同的屬性名,但必須出自相同的域集。
  • R與S的除運算得到一個新的關系P(X),P是R中滿足下列條件的元組在X屬性列上的投影:元組在X上分量值x的象集Yx包含S在Y上投影的集合。

三、關系完整性:

通用完整性:關系模型必須滿足的完整性限制條件,由關系系統自動支援

實體完整性:主屬性不能取空值

參照完整性:外碼要麼取空值要麼取别參照關系中的豬碼值

使用者定義的完整性:應用領域需要遵循的限制條件

繼續閱讀