數據庫SQL---關係模型與關係代數

一、關係數據庫:表的集合,即關係的集合。數據庫

     關係數據庫=關係數據庫模式(型)+關係數據庫內容(值)對象

1)域:一組具備相同數據類型的值的集合。數據類型

2)笛卡爾積:對集合進行窮舉外變一次內變一邊,是一張二維表,表中的一行對應於一個元組,表中的一列的值來自於同一個域。數據

     給定一組域D1,D2,...,Dn的笛卡爾積爲D1×D2×...×Dn={(d1,d2,...,dn)|di€Di,i=1,2,...,n},其中集合中的每個元素(d1,d2,...,dn)稱爲一個n元組,簡稱元組,元組中的每個值di稱爲一個份量查詢

3)關係:笛卡爾積的子集,是一張二維表。集合

二、關係模式:簡記爲r(U)或r(D1,D2,...,Dn),其中r是關係的名字,U是屬性名(D1,D2,...,Dn)的集合,n是關係的目(或度),當n=1時,稱該關係爲單元關係;當n=2時,稱該關係爲二元關係。di

三、碼去重

1)超碼:屬性集A能夠惟一地標識關係r中的一個元組,則稱屬性A爲關係r的超碼。模型

2)全碼:全部屬性加在一塊兒組成的候選碼。

3)候選碼:屬性集A是關係r的超碼,且屬性集A的任意真子集都不能稱爲關係r的超碼,則稱屬性集A爲候選碼。候選碼是最小的超碼,即最小屬性組。

候選碼的諸屬性稱爲主屬性,不能爲空。不包含在任何候選碼中的屬性稱爲非碼屬性。

4)主碼:若一個關係有多個候選碼,則可選定其中一個候選碼做爲該關係的主碼。

5)外碼:F是關係r的一個屬性,Ks是關係s的主碼,若F與Ks相對應,則稱F是關係r參照關係s的外碼,簡稱F是關係r的外碼,並稱關係r爲參照關係,關係s爲被參照關係或目標關係。

四、關係完整性約束

      關係模式中3類數據完整性約束:實體完整性、參照完整性、用戶自定義完整性,其中前兩種稱爲關係的兩個不變性。

1)實體完整性:若屬性集A是關係r的主碼,則A不能取空值null,即主屬性不能爲空。

2)參照完整性:主鍵與外鍵的關係,外碼的取值要麼爲空,要麼爲與之對應的主碼的值。

3)用戶自定義完整性:限制關係中某些屬性的取值、限制關係中某些屬性的取值之間須要知足必定的邏輯關係、限制關係中某屬性集上的取值必須惟一。

五、關係模式中的關係操做:查詢操做(最主要部分)、更新操做。

特色:集合操做方式,即操做的對象和結果都是集合。該操做方式也稱爲一次一集合方式,非關係數據模型的數據操做方式稱爲一次一記錄方式。

六、傳統的集合運算:將關係看做元組的集合,從關係的水平方向來進行的。

1)並υ:rυs,由屬性r或屬性s的全部元組組成,刪去重複元組。

2)差−:r−s,由屬性r的全部元素組成,從中刪除與屬性s相同的元組。

3)交∩:r∩s,由既屬於r又屬於s的全部元組組成,取相同的元組。

4)笛卡爾積×:r×s,關係r爲n目元組的集合,關係s爲m目元組的集合,結果爲一個n+m目元組的集合,元組的前n列是關係r的一個元組,後m列是關係s的一個元組。 

七、關係運算

1)選擇σ:選出若干行。是一個邏輯表達式,取值爲「真」或「假」。

2)投影Π:選出若干列,並從刪除重複列。

3)鏈接(θ鏈接):從兩個關係的笛卡爾積中選取鏈接屬性間知足謂詞θ的全部元組。

(1)等值鏈接:θ爲等值比較謂詞的鏈接運算。

(2)天然鏈接:特殊的等值鏈接,要求兩個參與鏈接的關係具備公共的屬性集,並在該屬性集上進行等值鏈接,並去除重複列。

(3)外鏈接:把不能鏈接的元組也保留到結果關係中,關係r中不能鏈接的元組在結果中對應於關係s的屬性所有置空。

(4)左外鏈接:把左關係中不能鏈接的元組保留到結果關係中。

(5)右外鏈接:把右關係中不能鏈接的元組保留到結果關係中。

4)除運算÷:求投影。

相關文章
相關標籤/搜索