1、關係資料庫:表的集合,即關係的集合。 關係資料庫=關係資料庫模式(型)+關係資料庫內容(值) 1)域:一組具有相同數據類型的值的集合。 2)笛卡爾積:對集合進行窮舉外變一次內變一邊,是一張二維表,表中的一行對應於一個元組,表中的一列的值來自於同一個域。 給定一組域D1,D2,...,Dn的笛卡爾 ...
1、關係資料庫:表的集合,即關係的集合。
關係資料庫=關係資料庫模式(型)+關係資料庫內容(值)
1)域:一組具有相同數據類型的值的集合。
2)笛卡爾積:對集合進行窮舉外變一次內變一邊,是一張二維表,表中的一行對應於一個元組,表中的一列的值來自於同一個域。
給定一組域D1,D2,...,Dn的笛卡爾積為D1×D2×...×Dn={(d1,d2,...,dn)|di€Di,i=1,2,...,n},其中集合中的每一個元素(d1,d2,...,dn)稱為一個n元組,簡稱元組,元組中的每一個值di稱為一個分量。
3)關係:笛卡爾積的子集,是一張二維表。
2、關係模式:簡記為r(U)或r(D1,D2,...,Dn),其中r是關係的名字,U是屬性名(D1,D2,...,Dn)的集合,n是關係的目(或度),當n=1時,稱該關係為單元關係;當n=2時,稱該關係為二元關係。
3、碼
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為被參照關係或目標關係。
4、關係完整性約束
關係模式中3類數據完整性約束:實體完整性、參照完整性、用戶自定義完整性,其中前兩種稱為關係的兩個不變性。
1)實體完整性:若屬性集A是關係r的主碼,則A不能取空值null,即主屬性不能為空。
2)參照完整性:主鍵與外鍵的關係,外碼的取值要麼為空,要麼為與之對應的主碼的值。
3)用戶自定義完整性:限制關係中某些屬性的取值、限制關係中某些屬性的取值之間需要滿足一定的邏輯關係、限制關係中某屬性集上的取值必須唯一。
5、關係模式中的關係操作:查詢操作(最主要部分)、更新操作。
特點:集合操作方式,即操作的對象和結果都是集合。該操作方式也稱為一次一集合方式,非關係數據模型的數據操作方式稱為一次一記錄方式。
6、傳統的集合運算:將關係看作元組的集合,從關係的水平方向來進行的。
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的一個元組。
7、關係運算
1)選擇σ:選出若幹行。是一個邏輯表達式,取值為“真”或“假”。
2)投影Π:選出若幹列,並從刪除重覆列。
3)連接(θ連接):從兩個關係的笛卡爾積中選取連接屬性間滿足謂詞θ的所有元組。
(1)等值連接:θ為等值比較謂詞的連接運算。
(2)自然連接:特殊的等值連接,要求兩個參與連接的關係具有公共的屬性集,併在該屬性集上進行等值連接,並去除重覆列。
(3)外連接:把不能連接的元組也保留到結果關係中,關係r中不能連接的元組在結果中對應於關係s的屬性全部置空。
(4)左外連接:把左關係中不能連接的元組保留到結果關係中。
(5)右外連接:把右關係中不能連接的元組保留到結果關係中。
4)除運算÷:求投影。