數(shù)據(jù)庫教學講解課件ch2_第1頁
數(shù)據(jù)庫教學講解課件ch2_第2頁
數(shù)據(jù)庫教學講解課件ch2_第3頁
數(shù)據(jù)庫教學講解課件ch2_第4頁
數(shù)據(jù)庫教學講解課件ch2_第5頁
已閱讀5頁,還剩95頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第二章關(guān)系數(shù)據(jù)庫2.1關(guān)系模型概述2.2關(guān)系數(shù)據(jù)結(jié)構(gòu)級形式化定義2.3關(guān)系的完整性第二章關(guān)系數(shù)據(jù)庫2.1關(guān)系模型概述12.1關(guān)系模型數(shù)據(jù)模型的組成要素:數(shù)據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作、和完整性約束三部分組成。

(1)

數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)是所研究的對象類型(ObjectType)的集合。這些對象是數(shù)據(jù)庫的組成部分。一般可分為兩類:一類是與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對象,如網(wǎng)狀模型中的數(shù)據(jù)項、記錄,關(guān)系模型中的屬性、關(guān)系等;一類是與數(shù)據(jù)之間聯(lián)系有關(guān)的對象,如網(wǎng)狀模型中的系型(SetType)等。(2)

數(shù)據(jù)操作數(shù)據(jù)操作是指對數(shù)據(jù)庫中各種對象(型)的實例(值)允許執(zhí)行的操作的集合。數(shù)據(jù)庫主要有檢索和更新(插入、刪除、修改)兩大類操作。數(shù)據(jù)結(jié)構(gòu)是對系統(tǒng)靜態(tài)特性的描述,數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述。(3)數(shù)據(jù)的約束條件數(shù)據(jù)的約束條件是完整性規(guī)則的集合。完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。2.1關(guān)系模型2關(guān)系數(shù)據(jù)模型的組成要素:關(guān)系數(shù)據(jù)結(jié)構(gòu):實體及聯(lián)系統(tǒng)一用二維表表示(關(guān)系)。

關(guān)系操作

關(guān)系完整性約束實體完整性

參照完整性

用戶定義完整性選擇

投影

連接

增加

刪除

修改專門的關(guān)系運算傳統(tǒng)的集合運算更新操作查詢操作學號姓名年齡1aaa202bbb213ccc20關(guān)系數(shù)據(jù)模型的組成要素:實體完整性

參照完整性

用戶定義完整3關(guān)系數(shù)據(jù)結(jié)構(gòu):概念:域,笛卡兒積,關(guān)系。侯選碼:關(guān)系中的某一屬性組的值能唯一地標識一個元組,則稱該屬性組為侯選碼。

主碼:若一個關(guān)系有多個侯選碼,則選定其中一個為主碼。主屬性:包含在侯選碼中的諸屬性稱為主屬性。非主屬性:不包含在任何侯選碼中的屬性稱為非主屬性。關(guān)系:一組域上的笛卡兒積的子集給定一組域D1,D2,…,Dn,這些域中可以有相同的。D1,D2,…,Dn的笛卡兒積為:D1×D2×…×Dn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n}其中,每一個元素(d1,d2,…,dn)叫作一個n元組(n-tuple)或簡稱元組學號姓名年齡1aaa202bbb213ccc20關(guān)系數(shù)據(jù)結(jié)構(gòu):關(guān)系:一組域上的笛卡兒積的子集學號姓名年齡1a4基本關(guān)系的性質(zhì)

關(guān)系規(guī)范化:規(guī)范化關(guān)系的最基本要求是每一個分量(列)必須是不可再分的(第一范式)。關(guān)系數(shù)據(jù)庫:所以實體之間的聯(lián)系所構(gòu)成的關(guān)系的集合。關(guān)系完整性:實體完整性:關(guān)系的主碼不能為空。參照完整性:對兩個關(guān)系R,S而言,如果R的屬性(或?qū)傩越M)F與關(guān)系S的主碼KS相對應(yīng),則稱F是R的外碼。列是同質(zhì)的,即數(shù)據(jù)類型一樣;

列順序無關(guān)緊要;

任意兩個元組(行)不能相同(完全);

分量(列)必須取原子值(不可再分);

不同的列(但數(shù)據(jù)類型基本相同)可出自同一域。姓名工資1工資2張三500600李四400500工資姓名工資1工資2張三600500李四500400列是同質(zhì)的,即數(shù)據(jù)類型一樣;

列順序無關(guān)緊要;

任意兩個元組5用戶定義的完整性:某一具體的數(shù)據(jù)庫的屬性及其關(guān)系所應(yīng)滿足的條件。

例如:年齡>15,體重>50Kg。小結(jié):實體完整性和參照完整性是所有關(guān)系數(shù)據(jù)庫都支持的稱為關(guān)系的兩個不變性。學號姓名年齡學歷1aaa2bbb3ccc4ddd5eee學號數(shù)學英語化學12345主碼(主鍵):學號侯選碼(鍵):學號,姓名

主屬性:學號,姓名RS學號姓名年齡學歷1aaa2bbb3ccc4ddd5eee學號6關(guān)系操作

關(guān)系模型給出了關(guān)系操作的能力和特點,但不對DBMS的語言給出具體的語法要求。關(guān)系語言的特點是高度非過程化。關(guān)系操作能力是用兩種方式表示的:關(guān)系代數(shù)和關(guān)系演算,它們的功能是等價的。

例如:SELECT姓名,年齡FORM學生表WHERE年齡>50關(guān)系操作的能力常用關(guān)系代數(shù)表示選擇(Selection)投影(Projection)連接(Join)除(Division)并(Union)交(Intersection)差(SetDifference)關(guān)系操作方式的特點是集合操作(一次一集合)關(guān)系操作關(guān)系操作的能力常用關(guān)系代數(shù)表示并(Union)7關(guān)系代數(shù)——運算符關(guān)系代數(shù)——運算符8關(guān)系代數(shù)——集合運算集合(Set)無重復(fù)、順序無關(guān){1,2,3}多重集合(Bag)可重復(fù)、順序無關(guān){1,2,2,3,4}列表(List)可重復(fù)、順序相關(guān)(1,2,3,4)集合運算并、交、差、廣義笛卡兒積二目運算關(guān)系代數(shù)——集合運算集合(Set)9集合運算——并Union(∪)R和S的并,R∪S,是在R或S或兩者中的元素的集合一個元素在并集中只出現(xiàn)一次R和S必須同類型(屬性集相同、次序相同,但屬性名可以不同)R∪S集合運算——并Union(∪)R和S的并,R∪S,是在R或10集合運算——并Union(∪)集合運算——并Union(∪)11集合運算——交Intersect(∩)R和S的交,R∩S,是在R和S中都存在的元素的集合一個元素在交集中只出現(xiàn)一次R和S必須同類型(屬性集相同、次序相同,但屬性名可以不同)R∩S集合運算——交Intersect(∩)R和S的交,R∩S,12集合運算——交Intersect(∩)集合運算——交Intersect(∩)13集合運算——差Minus(-)R和S的差,R-S,是在R中而不在S中的元素的集合R和S必須同類型(屬性集相同、次序相同,但屬性名可以不同)R-S集合運算——差Minus(-)R和S的差,R-S,是在R中14集合運算——差Minus(-)集合運算——差Minus(-)15集合運算——笛卡兒積(×)關(guān)系R、S的笛卡兒積是兩個關(guān)系的元組對的集合所組成的新關(guān)系R×S:屬性是R和S的組合(有重復(fù))元組是R和S所有元組的可能組合是R、S的無條件連接,使任意兩個關(guān)系的信息能組合在一起集合運算——笛卡兒積(×)關(guān)系R、S的笛卡兒積是兩個關(guān)系的元16集合運算——笛卡兒積(×)集合運算——笛卡兒積(×)17關(guān)系運算——除(÷)關(guān)系運算——除(÷)18關(guān)系運算——除(÷)關(guān)系運算——除(÷)19關(guān)系代數(shù)——專門的關(guān)系運算選擇、投影、連接、除法關(guān)系代數(shù)——專門的關(guān)系運算選擇、投影、連接、除法20關(guān)系運算——選擇(σ)從關(guān)系R中選擇符合條件的元組構(gòu)成新的關(guān)系σF(R),表示從R中選擇滿足條件(使邏輯表達式F為真)的元組行的運算關(guān)系運算——選擇(σ)從關(guān)系R中選擇符合條件的元組構(gòu)成新的關(guān)21關(guān)系運算——選擇(σ)例:σssex=‘男’ANDsdep=‘IS’(Student)

關(guān)系運算——選擇(σ)例:σssex=‘男’AND22關(guān)系運算——投影(π)從關(guān)系R中選擇若干屬性組成新的關(guān)系πA1,A2,…,An(R),表示從R中選擇屬性集A1,A2,…,An組成新的關(guān)系列的運算投影運算的結(jié)果中,也要去除可能的重復(fù)元組關(guān)系運算——投影(π)從關(guān)系R中選擇若干屬性組成新的關(guān)系23關(guān)系運算——投影(π)例:πssex,sage(student)關(guān)系運算——投影(π)例:πssex,sage(stude24關(guān)系代數(shù)—改名(ρ)對關(guān)系R實施改名運算,可顯式地改變關(guān)系名及屬性名將關(guān)系R改名為S:ρs(R)將關(guān)系R(B1,B2,…,Bn)改名S(A1,A2,…,An):ρS(A1,A2,…,An)(R)關(guān)系代數(shù)—改名(ρ)25關(guān)系運算——條件連接(θ)從R×S的結(jié)果集中,選取在指定的屬性集上滿足θ條件的元組,組成新的關(guān)系θ是一個關(guān)于屬性集的邏輯表達式RθS關(guān)系運算——條件連接(θ)從R×S的結(jié)果集中,選取在指定的屬26關(guān)系運算——條件連接(θ)兩個表的運算屬性在結(jié)果表中都要出現(xiàn)關(guān)系運算——條件連接(θ)兩個表的運算屬性在結(jié)果表中都要出現(xiàn)27關(guān)系運算——等值連接(θ)RSR.B=S.B關(guān)系運算——等值連接(θ)RSR.B=S.B28關(guān)系運算——自然連接()從R×S的結(jié)果集中,選取在某些公共屬性上具有相同值的元組,組成新的關(guān)系R、S的公共屬性屬性集的交集(名稱及類型相同)公共屬性在結(jié)果中只出現(xiàn)一次例:studentsc關(guān)系運算——自然連接()從R×S的結(jié)果集中,選取在29關(guān)系運算——自然連接()RS兩個表的運算屬性在結(jié)果表中只出現(xiàn)一個關(guān)系運算——自然連接()RS兩個表的運算屬性在結(jié)果30關(guān)系代數(shù)包含兩類運算:傳統(tǒng)的集合運算,如并、交、差、廣義笛卡兒積,這類運算將關(guān)系看成元組的集合,其運算是從關(guān)系的“水平”方向即行的角度來進行的。專門的關(guān)系運算,如選擇、投影、連接、除,這類運算不僅涉及行,而且涉及列。關(guān)系運算的運算對象是關(guān)系,結(jié)果也是關(guān)系關(guān)系代數(shù)包含兩類運算:31關(guān)系代數(shù)的運算符有:集合運算符:∪(并)∩(交)—(差)×(廣義笛卡兒積)專門的關(guān)系運算符:σ(選擇)π(投影)χ(連接)*(自然連接)÷(除)

算術(shù)比較符θ={>,<,≥,≤,=,≠}

邏輯運算符:∧(AND)∨(OR)┐(NOT)關(guān)系代數(shù)的運算符有:321.關(guān)系并運算:關(guān)系R和關(guān)系S的所有元組的合并,在刪去重復(fù)的元組,組成一個新關(guān)系,記作:R∪S2.關(guān)系差運算:在關(guān)系R中刪去與關(guān)系S中相同的元組,組成一個新關(guān)系,記作:R-S3.關(guān)系交運算:在兩個關(guān)系R與S中取相同的元組,組成一個新關(guān)系,記作:R∩S4.廣義笛卡兒積:兩個元組個數(shù)分別為n、m的關(guān)系R和S的廣義笛卡兒積是一個(n×m)元組的集合,記作:R×S傳統(tǒng)的集合運算1.關(guān)系并運算:關(guān)系R和關(guān)系S的所有元組的合并,在刪去重復(fù)33它是二目元算,其中R和S要求是同類關(guān)系(除廣義笛卡兒積運算)它能實現(xiàn)關(guān)系數(shù)據(jù)庫的許多基本操作并運算實現(xiàn)數(shù)據(jù)記錄的添加和插入差運算實現(xiàn)數(shù)據(jù)記錄的刪除數(shù)據(jù)記錄的修改則是通過先刪除,后插入這兩步完成的傳統(tǒng)的集合運算它是二目元算,其中R和S要求是同類關(guān)系(除廣義笛卡兒積運算)341.選擇:是在指定的關(guān)系中,按給定的條件選取其中的若干個元組,組成一個新的關(guān)系運算。記作:σP(R)P為布爾函數(shù),可由運算對象(屬性名、常數(shù)、簡單函數(shù))、算術(shù)比較符合邏輯運算符連接起來的表達式組成。選擇是單目運算選擇是從關(guān)系的水平方向(行)的角度進行運算例:求計算機系CS的學生基本情況σDEP=‘CS’(S)專門的關(guān)系運算1.選擇:是在指定的關(guān)系中,按給定的條件選取其中的若干個元352.投影:是在指定的關(guān)系R中,根據(jù)從左到右的次序,按照指定的若干屬性及它們的順序取出各列,在刪去結(jié)果中重復(fù)元組,組成一個關(guān)系。記作:ΠX(R)X為選取的屬性集合投影是單目運算投影是從關(guān)系的垂直方向上(列的調(diào)度)取子集例:在關(guān)系S中選取學生姓名和所在系ΠSN,DEP(S)專門的關(guān)系運算2.投影:是在指定的關(guān)系R中,根據(jù)從左到右的次序,按照指定363.連接:是從兩個關(guān)系R、S的笛卡兒積中選取滿足連接條件的那些元組。記作:XθY為連接條件當θ為“=”,稱為等值連接連接運算是二目運算連接結(jié)果是一個(n+m)元運算舉例:專門的關(guān)系運算專門的關(guān)系運算374.自然連接:對于關(guān)系R、S,在等值連接的情況下,當連接屬性X與Y具有相同的屬性名時,則關(guān)系R與S的連接稱為自然連接。記作:R*S在自然連接構(gòu)成的結(jié)果關(guān)系中,相同的屬性名不必重復(fù)。自然連接是組裝關(guān)系的有效方法例:求選修了G課程的學生姓名和成績ΠSN,GRADE(Π#C(σCN=‘G’(C))*(SC)*ΠS#,SN(S))專門的關(guān)系運算專門的關(guān)系運算385.除法:它使用除數(shù)關(guān)系S(Z)在被除數(shù)關(guān)系R(X,Y)中取商關(guān)系,記作:R÷SY和Z具有相同的屬性數(shù)目,且對應(yīng)屬性出自相同的域商關(guān)系是關(guān)系R在屬性X上投影的一個子集舉例:關(guān)系代數(shù)代數(shù)表達式的運算結(jié)果是一個關(guān)系關(guān)系數(shù)據(jù)庫的DML語言至少支持選取、投影和連接三種運算專門的關(guān)系運算5.除法:它使用除數(shù)關(guān)系S(Z)在被除數(shù)關(guān)系R(X,Y)中39關(guān)系代數(shù)——實例關(guān)系代數(shù)——實例40關(guān)系代數(shù)——實例1查詢選修了2號課程的學生的學號課程號、學號←SC表關(guān)系代數(shù)——實例1查詢選修了2號課程的學生的學號41關(guān)系代數(shù)——實例12號課程的選課情況σcno=‘2’(SC)關(guān)系代數(shù)——實例12號課程的選課情況42關(guān)系代數(shù)——實例1選修2號課程的學號πsno(σcno=‘2’(SC))關(guān)系代數(shù)——實例1選修2號課程的學號43關(guān)系代數(shù)——實例2列出選修‘數(shù)學’課的學生的學號、姓名以及成績學號、姓名←Student表課程名稱←Course表成績←SC表Student←SC→Coursesnocno關(guān)系代數(shù)——實例2列出選修‘數(shù)學’課的學生的學號、姓名以及成44關(guān)系代數(shù)——實例2‘數(shù)學’課σcno=‘數(shù)學’(Course)關(guān)系代數(shù)——實例2‘數(shù)學’課45關(guān)系代數(shù)——實例2關(guān)系代數(shù)——實例246關(guān)系代數(shù)——實例2‘選修‘數(shù)學’課的記錄SC(σcno=‘數(shù)學’(Course))關(guān)系代數(shù)——實例2‘選修‘數(shù)學’課的記錄47關(guān)系代數(shù)——實例2選修‘數(shù)學’的學生記錄Student(SC(σcno=‘數(shù)學’(Course)))關(guān)系代數(shù)——實例2選修‘數(shù)學’的學生記錄48關(guān)系代數(shù)——實例2選修‘數(shù)學’的學生的學號、姓名、成績πsno,sname,gradeStudent(SC(σcno

=‘數(shù)學’

(Course)))關(guān)系代數(shù)——實例2選修‘數(shù)學’的學生的學號、姓名、成績49關(guān)系代數(shù)——實例2關(guān)系代數(shù)——實例250第二章關(guān)系數(shù)據(jù)庫2.1關(guān)系模型概述2.2關(guān)系數(shù)據(jù)結(jié)構(gòu)級形式化定義2.3關(guān)系的完整性第二章關(guān)系數(shù)據(jù)庫2.1關(guān)系模型概述512.1關(guān)系模型數(shù)據(jù)模型的組成要素:數(shù)據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作、和完整性約束三部分組成。

(1)

數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)是所研究的對象類型(ObjectType)的集合。這些對象是數(shù)據(jù)庫的組成部分。一般可分為兩類:一類是與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對象,如網(wǎng)狀模型中的數(shù)據(jù)項、記錄,關(guān)系模型中的屬性、關(guān)系等;一類是與數(shù)據(jù)之間聯(lián)系有關(guān)的對象,如網(wǎng)狀模型中的系型(SetType)等。(2)

數(shù)據(jù)操作數(shù)據(jù)操作是指對數(shù)據(jù)庫中各種對象(型)的實例(值)允許執(zhí)行的操作的集合。數(shù)據(jù)庫主要有檢索和更新(插入、刪除、修改)兩大類操作。數(shù)據(jù)結(jié)構(gòu)是對系統(tǒng)靜態(tài)特性的描述,數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述。(3)數(shù)據(jù)的約束條件數(shù)據(jù)的約束條件是完整性規(guī)則的集合。完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。2.1關(guān)系模型52關(guān)系數(shù)據(jù)模型的組成要素:關(guān)系數(shù)據(jù)結(jié)構(gòu):實體及聯(lián)系統(tǒng)一用二維表表示(關(guān)系)。

關(guān)系操作

關(guān)系完整性約束實體完整性

參照完整性

用戶定義完整性選擇

投影

連接

增加

刪除

修改專門的關(guān)系運算傳統(tǒng)的集合運算更新操作查詢操作學號姓名年齡1aaa202bbb213ccc20關(guān)系數(shù)據(jù)模型的組成要素:實體完整性

參照完整性

用戶定義完整53關(guān)系數(shù)據(jù)結(jié)構(gòu):概念:域,笛卡兒積,關(guān)系。侯選碼:關(guān)系中的某一屬性組的值能唯一地標識一個元組,則稱該屬性組為侯選碼。

主碼:若一個關(guān)系有多個侯選碼,則選定其中一個為主碼。主屬性:包含在侯選碼中的諸屬性稱為主屬性。非主屬性:不包含在任何侯選碼中的屬性稱為非主屬性。關(guān)系:一組域上的笛卡兒積的子集給定一組域D1,D2,…,Dn,這些域中可以有相同的。D1,D2,…,Dn的笛卡兒積為:D1×D2×…×Dn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n}其中,每一個元素(d1,d2,…,dn)叫作一個n元組(n-tuple)或簡稱元組學號姓名年齡1aaa202bbb213ccc20關(guān)系數(shù)據(jù)結(jié)構(gòu):關(guān)系:一組域上的笛卡兒積的子集學號姓名年齡1a54基本關(guān)系的性質(zhì)

關(guān)系規(guī)范化:規(guī)范化關(guān)系的最基本要求是每一個分量(列)必須是不可再分的(第一范式)。關(guān)系數(shù)據(jù)庫:所以實體之間的聯(lián)系所構(gòu)成的關(guān)系的集合。關(guān)系完整性:實體完整性:關(guān)系的主碼不能為空。參照完整性:對兩個關(guān)系R,S而言,如果R的屬性(或?qū)傩越M)F與關(guān)系S的主碼KS相對應(yīng),則稱F是R的外碼。列是同質(zhì)的,即數(shù)據(jù)類型一樣;

列順序無關(guān)緊要;

任意兩個元組(行)不能相同(完全);

分量(列)必須取原子值(不可再分);

不同的列(但數(shù)據(jù)類型基本相同)可出自同一域。姓名工資1工資2張三500600李四400500工資姓名工資1工資2張三600500李四500400列是同質(zhì)的,即數(shù)據(jù)類型一樣;

列順序無關(guān)緊要;

任意兩個元組55用戶定義的完整性:某一具體的數(shù)據(jù)庫的屬性及其關(guān)系所應(yīng)滿足的條件。

例如:年齡>15,體重>50Kg。小結(jié):實體完整性和參照完整性是所有關(guān)系數(shù)據(jù)庫都支持的稱為關(guān)系的兩個不變性。學號姓名年齡學歷1aaa2bbb3ccc4ddd5eee學號數(shù)學英語化學12345主碼(主鍵):學號侯選碼(鍵):學號,姓名

主屬性:學號,姓名RS學號姓名年齡學歷1aaa2bbb3ccc4ddd5eee學號56關(guān)系操作

關(guān)系模型給出了關(guān)系操作的能力和特點,但不對DBMS的語言給出具體的語法要求。關(guān)系語言的特點是高度非過程化。關(guān)系操作能力是用兩種方式表示的:關(guān)系代數(shù)和關(guān)系演算,它們的功能是等價的。

例如:SELECT姓名,年齡FORM學生表WHERE年齡>50關(guān)系操作的能力常用關(guān)系代數(shù)表示選擇(Selection)投影(Projection)連接(Join)除(Division)并(Union)交(Intersection)差(SetDifference)關(guān)系操作方式的特點是集合操作(一次一集合)關(guān)系操作關(guān)系操作的能力常用關(guān)系代數(shù)表示并(Union)57關(guān)系代數(shù)——運算符關(guān)系代數(shù)——運算符58關(guān)系代數(shù)——集合運算集合(Set)無重復(fù)、順序無關(guān){1,2,3}多重集合(Bag)可重復(fù)、順序無關(guān){1,2,2,3,4}列表(List)可重復(fù)、順序相關(guān)(1,2,3,4)集合運算并、交、差、廣義笛卡兒積二目運算關(guān)系代數(shù)——集合運算集合(Set)59集合運算——并Union(∪)R和S的并,R∪S,是在R或S或兩者中的元素的集合一個元素在并集中只出現(xiàn)一次R和S必須同類型(屬性集相同、次序相同,但屬性名可以不同)R∪S集合運算——并Union(∪)R和S的并,R∪S,是在R或60集合運算——并Union(∪)集合運算——并Union(∪)61集合運算——交Intersect(∩)R和S的交,R∩S,是在R和S中都存在的元素的集合一個元素在交集中只出現(xiàn)一次R和S必須同類型(屬性集相同、次序相同,但屬性名可以不同)R∩S集合運算——交Intersect(∩)R和S的交,R∩S,62集合運算——交Intersect(∩)集合運算——交Intersect(∩)63集合運算——差Minus(-)R和S的差,R-S,是在R中而不在S中的元素的集合R和S必須同類型(屬性集相同、次序相同,但屬性名可以不同)R-S集合運算——差Minus(-)R和S的差,R-S,是在R中64集合運算——差Minus(-)集合運算——差Minus(-)65集合運算——笛卡兒積(×)關(guān)系R、S的笛卡兒積是兩個關(guān)系的元組對的集合所組成的新關(guān)系R×S:屬性是R和S的組合(有重復(fù))元組是R和S所有元組的可能組合是R、S的無條件連接,使任意兩個關(guān)系的信息能組合在一起集合運算——笛卡兒積(×)關(guān)系R、S的笛卡兒積是兩個關(guān)系的元66集合運算——笛卡兒積(×)集合運算——笛卡兒積(×)67關(guān)系運算——除(÷)關(guān)系運算——除(÷)68關(guān)系運算——除(÷)關(guān)系運算——除(÷)69關(guān)系代數(shù)——專門的關(guān)系運算選擇、投影、連接、除法關(guān)系代數(shù)——專門的關(guān)系運算選擇、投影、連接、除法70關(guān)系運算——選擇(σ)從關(guān)系R中選擇符合條件的元組構(gòu)成新的關(guān)系σF(R),表示從R中選擇滿足條件(使邏輯表達式F為真)的元組行的運算關(guān)系運算——選擇(σ)從關(guān)系R中選擇符合條件的元組構(gòu)成新的關(guān)71關(guān)系運算——選擇(σ)例:σssex=‘男’ANDsdep=‘IS’(Student)

關(guān)系運算——選擇(σ)例:σssex=‘男’AND72關(guān)系運算——投影(π)從關(guān)系R中選擇若干屬性組成新的關(guān)系πA1,A2,…,An(R),表示從R中選擇屬性集A1,A2,…,An組成新的關(guān)系列的運算投影運算的結(jié)果中,也要去除可能的重復(fù)元組關(guān)系運算——投影(π)從關(guān)系R中選擇若干屬性組成新的關(guān)系73關(guān)系運算——投影(π)例:πssex,sage(student)關(guān)系運算——投影(π)例:πssex,sage(stude74關(guān)系代數(shù)—改名(ρ)對關(guān)系R實施改名運算,可顯式地改變關(guān)系名及屬性名將關(guān)系R改名為S:ρs(R)將關(guān)系R(B1,B2,…,Bn)改名S(A1,A2,…,An):ρS(A1,A2,…,An)(R)關(guān)系代數(shù)—改名(ρ)75關(guān)系運算——條件連接(θ)從R×S的結(jié)果集中,選取在指定的屬性集上滿足θ條件的元組,組成新的關(guān)系θ是一個關(guān)于屬性集的邏輯表達式RθS關(guān)系運算——條件連接(θ)從R×S的結(jié)果集中,選取在指定的屬76關(guān)系運算——條件連接(θ)兩個表的運算屬性在結(jié)果表中都要出現(xiàn)關(guān)系運算——條件連接(θ)兩個表的運算屬性在結(jié)果表中都要出現(xiàn)77關(guān)系運算——等值連接(θ)RSR.B=S.B關(guān)系運算——等值連接(θ)RSR.B=S.B78關(guān)系運算——自然連接()從R×S的結(jié)果集中,選取在某些公共屬性上具有相同值的元組,組成新的關(guān)系R、S的公共屬性屬性集的交集(名稱及類型相同)公共屬性在結(jié)果中只出現(xiàn)一次例:studentsc關(guān)系運算——自然連接()從R×S的結(jié)果集中,選取在79關(guān)系運算——自然連接()RS兩個表的運算屬性在結(jié)果表中只出現(xiàn)一個關(guān)系運算——自然連接()RS兩個表的運算屬性在結(jié)果80關(guān)系代數(shù)包含兩類運算:傳統(tǒng)的集合運算,如并、交、差、廣義笛卡兒積,這類運算將關(guān)系看成元組的集合,其運算是從關(guān)系的“水平”方向即行的角度來進行的。專門的關(guān)系運算,如選擇、投影、連接、除,這類運算不僅涉及行,而且涉及列。關(guān)系運算的運算對象是關(guān)系,結(jié)果也是關(guān)系關(guān)系代數(shù)包含兩類運算:81關(guān)系代數(shù)的運算符有:集合運算符:∪(并)∩(交)—(差)×(廣義笛卡兒積)專門的關(guān)系運算符:σ(選擇)π(投影)χ(連接)*(自然連接)÷(除)

算術(shù)比較符θ={>,<,≥,≤,=,≠}

邏輯運算符:∧(AND)∨(OR)┐(NOT)關(guān)系代數(shù)的運算符有:821.關(guān)系并運算:關(guān)系R和關(guān)系S的所有元組的合并,在刪去重復(fù)的元組,組成一個新關(guān)系,記作:R∪S2.關(guān)系差運算:在關(guān)系R中刪去與關(guān)系S中相同的元組,組成一個新關(guān)系,記作:R-S3.關(guān)系交運算:在兩個關(guān)系R與S中取相同的元組,組成一個新關(guān)系,記作:R∩S4.廣義笛卡兒積:兩個元組個數(shù)分別為n、m的關(guān)系R和S的廣義笛卡兒積是一個(n×m)元組的集合,記作:R×S傳統(tǒng)的集合運算1.關(guān)系并運算:關(guān)系R和關(guān)系S的所有元組的合并,在刪去重復(fù)83它是二目元算,其中R和S要求是同類關(guān)系(除廣義笛卡兒積運算)它能實現(xiàn)關(guān)系數(shù)據(jù)庫的許多基本操作并運算實現(xiàn)數(shù)據(jù)記錄的添加和插入差運算實現(xiàn)數(shù)據(jù)記錄的刪除數(shù)據(jù)記錄的修改則是通過先刪除,后插入這兩步完成的傳統(tǒng)的集合運算它是二目元算,其中R和S要求是同類關(guān)系(除廣義笛卡兒積運算)841.選擇:是在指定的關(guān)系中,按給定的條件選取其中的若干個元組,組成一個新的關(guān)系運算。記作:σP(R)P為布爾函數(shù),可由運算對象(屬性名、常數(shù)、簡單函數(shù))、算術(shù)比較符合邏輯運算符連接起來的表達式組成。選擇是單目運算選擇是從關(guān)系的水平方向(行)的角度進行運算例:求計算機系CS的學生基本情況σDEP=‘CS’(S)專門的關(guān)系運算1.選擇:是在指定的關(guān)系中,按給定的條件選取其中的若干個元852.投影:是在指定的關(guān)系R中,根據(jù)從左到右的次序,按照指定的若干屬性及它們的順序取出各列,在刪去結(jié)果中重復(fù)元組,組成一個關(guān)系。記作:ΠX(R)X為選取的屬性集合投影是單目運算投影是從關(guān)系的垂直方向上(列的調(diào)度)取子集例:在關(guān)系S中選取學生姓名和所在系ΠSN,DEP(S)專門的關(guān)系運算2.投影:是在指定的關(guān)系R中,根

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論