第章關(guān)系數(shù)據(jù)庫(kù)ppt課件_第1頁(yè)
第章關(guān)系數(shù)據(jù)庫(kù)ppt課件_第2頁(yè)
第章關(guān)系數(shù)據(jù)庫(kù)ppt課件_第3頁(yè)
第章關(guān)系數(shù)據(jù)庫(kù)ppt課件_第4頁(yè)
第章關(guān)系數(shù)據(jù)庫(kù)ppt課件_第5頁(yè)
已閱讀5頁(yè),還剩70頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第第2章章 關(guān)系數(shù)據(jù)庫(kù)關(guān)系數(shù)據(jù)庫(kù)2.1 2.1 關(guān)系模型及其定義關(guān)系模型及其定義2.2 2.2 關(guān)系的關(guān)系的3 3類(lèi)完好性約束類(lèi)完好性約束2.3 2.3 關(guān)系代數(shù)關(guān)系代數(shù)22.1.1 關(guān)系中的根本術(shù)語(yǔ)關(guān)系中的根本術(shù)語(yǔ) 關(guān)系:簡(jiǎn)單了解一個(gè)關(guān)系就是一張二維表關(guān)系:簡(jiǎn)單了解一個(gè)關(guān)系就是一張二維表, ,包含假設(shè)干個(gè)包含假設(shè)干個(gè)元組。元組。 元組:表中的一行即為一個(gè)元組。元組:表中的一行即為一個(gè)元組。 屬性:表中的列稱(chēng)為屬性。有時(shí)也稱(chēng)為字段屬性:表中的列稱(chēng)為屬性。有時(shí)也稱(chēng)為字段 域:屬性的取值范圍。域:屬性的取值范圍。 關(guān)系方式:對(duì)關(guān)系的描畫(huà)。關(guān)系方式:對(duì)關(guān)系的描畫(huà)。 例如:例如: R(sno, sna

2、me, sex, birthday, class) R(sno, sname, sex, birthday, class)32.1.1 關(guān)系中的根本術(shù)語(yǔ)關(guān)系中的根本術(shù)語(yǔ) 候選鍵或候選關(guān)鍵字,或稱(chēng)候選碼候選鍵或候選關(guān)鍵字,或稱(chēng)候選碼 是屬性或?qū)傩越M合,其值可以獨(dú)一的標(biāo)識(shí)一個(gè)元組。是屬性或?qū)傩越M合,其值可以獨(dú)一的標(biāo)識(shí)一個(gè)元組。 主鍵或主關(guān)鍵字主鍵或主關(guān)鍵字 假設(shè)有多個(gè)候選鍵,選擇其中一個(gè)作為主鍵。假設(shè)有多個(gè)候選鍵,選擇其中一個(gè)作為主鍵。 主屬性主屬性 包含在候選鍵中的各個(gè)屬性。包含在候選鍵中的各個(gè)屬性。 全碼全碼 一切屬性都是這個(gè)關(guān)系方式的候選碼。一切屬性都是這個(gè)關(guān)系方式的候選碼。 外鍵或外關(guān)鍵字

3、外鍵或外關(guān)鍵字 假設(shè)關(guān)系假設(shè)關(guān)系R2R2的一個(gè)或一組屬性的一個(gè)或一組屬性X X是另一關(guān)系是另一關(guān)系R1R1的主鍵,那么的主鍵,那么X X稱(chēng)稱(chēng)為外鍵。為外鍵。42.1.2 關(guān)系的數(shù)學(xué)定義關(guān)系的數(shù)學(xué)定義1. 1. 域域 域是一組具有一樣數(shù)據(jù)類(lèi)型的值的集合。域是一組具有一樣數(shù)據(jù)類(lèi)型的值的集合。 例如:自然數(shù)、實(shí)數(shù)、長(zhǎng)度小于例如:自然數(shù)、實(shí)數(shù)、長(zhǎng)度小于2525字節(jié)的字符串集合字節(jié)的字符串集合等等。等等。5 2. 2. 笛卡爾積笛卡爾積 設(shè)定一組域設(shè)定一組域D1D1,D2D2,DnDn,這些域中可以,這些域中可以存在一樣的域,定義存在一樣的域,定義D1D1,D2D2,DnDn的笛卡的笛卡爾積為:爾積為:

4、 笛卡爾積可以表示為一個(gè)二維表。表中的笛卡爾積可以表示為一個(gè)二維表。表中的每行對(duì)應(yīng)一個(gè)元組,每列對(duì)應(yīng)一個(gè)域。每行對(duì)應(yīng)一個(gè)元組,每列對(duì)應(yīng)一個(gè)域。1212.( , ,., )|,1 ,., nniiD DDd ddd Din 6如如D1=0,1,D2=a,b,cD1=0,1,D2=a,b,c那么那么12(0, ),(0, ),(0, ),(1 , ),(1 , ),(1 , )D Dabcabc7笛卡爾積笛卡爾積 例題例題 假設(shè)假設(shè)A=A=,B=1B=1,2 2,33, 求求A AB B, B BA A,A AA A,B BB BA AB=B=,1 1,2 2,3 3, ,1 1,2 2, , ,

5、= =,和和邏輯運(yùn)算符邏輯運(yùn)算符 銜接起來(lái)的邏輯表達(dá)式,結(jié)果銜接起來(lái)的邏輯表達(dá)式,結(jié)果為邏輯值為邏輯值“真或真或“假。假。例子例子1:查詢(xún)信息系全體學(xué)生:查詢(xún)信息系全體學(xué)生sdept=“IS (student) 5=“IS (student)或或362.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算選擇運(yùn)算是從關(guān)系選擇運(yùn)算是從關(guān)系R中選取使邏輯表達(dá)式中選取使邏輯表達(dá)式F為真的元組為真的元組,實(shí)踐上是從行的角度進(jìn)展的運(yùn)算。,實(shí)踐上是從行的角度進(jìn)展的運(yùn)算。372.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算選擇選擇從關(guān)系中找出滿(mǎn)足給定條件的一切元組稱(chēng)為選擇從關(guān)系中找出滿(mǎn)足給定條件的一切元組稱(chēng)為選擇. .選擇運(yùn)算是根

6、據(jù)某些條件對(duì)關(guān)系做程度分割,即選取符合選擇運(yùn)算是根據(jù)某些條件對(duì)關(guān)系做程度分割,即選取符合條件的元組。條件的元組。其中的條件是以邏輯表達(dá)式給出其中的條件是以邏輯表達(dá)式給出. . 經(jīng)過(guò)選擇運(yùn)算得到的結(jié)果元組可以構(gòu)成新的關(guān)系經(jīng)過(guò)選擇運(yùn)算得到的結(jié)果元組可以構(gòu)成新的關(guān)系, ,其關(guān)系其關(guān)系方式不變方式不變, ,但其中元組的數(shù)目小于等于原來(lái)的關(guān)系中元組但其中元組的數(shù)目小于等于原來(lái)的關(guān)系中元組的個(gè)數(shù)的個(gè)數(shù). .38例子例子1知關(guān)系R和S, 求4()DR2()BbS392.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算2. 2. 投影投影在關(guān)系在關(guān)系R R中求指定的由假設(shè)干個(gè)屬性組成新中求指定的由假設(shè)干個(gè)屬性組成新的關(guān)系

7、,即對(duì)關(guān)系在垂直方向進(jìn)展的運(yùn)算,從左到右按的關(guān)系,即對(duì)關(guān)系在垂直方向進(jìn)展的運(yùn)算,從左到右按照指定的假設(shè)干屬性及順序取出相應(yīng)列。照指定的假設(shè)干屬性及順序取出相應(yīng)列。 關(guān)系關(guān)系R R的投影運(yùn)算用的投影運(yùn)算用X(R)X(R)表示,方式定義如下:表示,方式定義如下:x(R)x(R) t X| tR t X| tR 其中其中x x為為R R的屬性列。的屬性列。 X X的屬性序號(hào)是對(duì)應(yīng)屬性在關(guān)的屬性序號(hào)是對(duì)應(yīng)屬性在關(guān)系中的順序編號(hào)系中的順序編號(hào). . 投影之后不僅取消了原關(guān)系中的某些列,而且取消投影之后不僅取消了原關(guān)系中的某些列,而且取消完全一樣的元組。完全一樣的元組。 402.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)

8、的集合運(yùn)算 從定義可看出,投影運(yùn)算是從列的角度進(jìn)展的運(yùn)從定義可看出,投影運(yùn)算是從列的角度進(jìn)展的運(yùn)算,這正是選取運(yùn)算和投影運(yùn)算的區(qū)別所在。算,這正是選取運(yùn)算和投影運(yùn)算的區(qū)別所在。41422.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算例子例子2:查詢(xún)學(xué)生的姓名和所在的系:查詢(xún)學(xué)生的姓名和所在的系sname,sdept(student) 2,5(student)或或 投影運(yùn)算可以改動(dòng)關(guān)系的屬性次序 43例子例子2知關(guān)系R和S, 求,()A CDR()BS,()DAR44銜接銜接在數(shù)學(xué)上,可以用笛卡爾積建立兩個(gè)關(guān)系間的銜接,在數(shù)學(xué)上,可以用笛卡爾積建立兩個(gè)關(guān)系間的銜接,但這樣的得到的關(guān)系數(shù)據(jù)冗余度大,在實(shí)踐

9、運(yùn)用中普通兩但這樣的得到的關(guān)系數(shù)據(jù)冗余度大,在實(shí)踐運(yùn)用中普通兩個(gè)相互關(guān)聯(lián)的關(guān)系往往需求滿(mǎn)足一定的條件,使所得的結(jié)個(gè)相互關(guān)聯(lián)的關(guān)系往往需求滿(mǎn)足一定的條件,使所得的結(jié)果一目了然。這就是我們要講的銜接運(yùn)算。果一目了然。這就是我們要講的銜接運(yùn)算。 45銜接銜接銜接是將兩個(gè)關(guān)系的屬性名拼接成一個(gè)更寬的關(guān)系銜接是將兩個(gè)關(guān)系的屬性名拼接成一個(gè)更寬的關(guān)系. .生成新的關(guān)系中包含滿(mǎn)足銜接條件的元組生成新的關(guān)系中包含滿(mǎn)足銜接條件的元組. .運(yùn)算過(guò)程是經(jīng)過(guò)銜接條件來(lái)控制的運(yùn)算過(guò)程是經(jīng)過(guò)銜接條件來(lái)控制的, ,銜接是對(duì)關(guān)系的結(jié)合銜接是對(duì)關(guān)系的結(jié)合. .46銜接銜接 銜接也稱(chēng)為銜接也稱(chēng)為聯(lián)接。它是從兩個(gè)關(guān)系的笛卡爾積中選

10、取屬性聯(lián)接。它是從兩個(gè)關(guān)系的笛卡爾積中選取屬性間滿(mǎn)足一定條件的元組組成新的關(guān)系。關(guān)系間滿(mǎn)足一定條件的元組組成新的關(guān)系。關(guān)系R R和和S S的銜接運(yùn)算的銜接運(yùn)算方式定義如下:方式定義如下: t tt = trR tsS t = trR tsS trA tsB trA tsB 其中其中A A和和B B分別為關(guān)系分別為關(guān)系R R和和S S上度數(shù)一樣且可比的屬性組。上度數(shù)一樣且可比的屬性組。 A BRS472.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算普通的銜接操作是從行的角度進(jìn)展運(yùn)算。 ABRS48例子例子3知關(guān)系R和S,求DERS49例子例子3續(xù)續(xù)502.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算銜接舉例:求

11、銜接舉例:求 R S, R S R S, R S 2=1ABC134579268BCD251683497RS3251銜接銜接 1) 1) 等值銜接等值銜接(Equi-jion)(Equi-jion):等值銜接即將銜接中的:等值銜接即將銜接中的換成換成“=“=,功能是從關(guān)系,功能是從關(guān)系R R和和S S的笛卡爾積中選取的笛卡爾積中選取A A,B B屬性值相屬性值相等的那些元組。它的方式定義為:等的那些元組。它的方式定義為: t tt = trR tsS t = trR tsS trAtrAtsB tsB A BRS52例子例子知 求.R BS BRS53例子例子54銜接銜接 2) 2) 自然銜接

12、自然銜接(Natural-jion)(Natural-jion):自然銜接是一種特殊的:自然銜接是一種特殊的等值銜接,它要求兩個(gè)關(guān)系中進(jìn)展比較的分量必需是等值銜接,它要求兩個(gè)關(guān)系中進(jìn)展比較的分量必需是一樣的屬性組,并且要在結(jié)果中將反復(fù)的屬性去掉。一樣的屬性組,并且要在結(jié)果中將反復(fù)的屬性去掉。它的方式定義為:它的方式定義為: t tt = trR tsS t = trR tsS trB trBtsB tsB R S55例子例子知 求RS56例子例子57銜接銜接銜接運(yùn)算普通是從行的角度進(jìn)展的操作,銜接運(yùn)算普通是從行的角度進(jìn)展的操作, 但自然銜接是同時(shí)從行和列的角度進(jìn)展的操作。但自然銜接是同時(shí)從行和

13、列的角度進(jìn)展的操作。 58關(guān)系R與S,求:R和S的大于銜接CD;R和S的等值銜接C=D;R和S的等值銜接R.B=S.B;R和S的自然銜接。ABCa1b12a1b24a2b36a2b48BDb15b26b37b59例子例子4RS59大于銜接CD 等值銜接C=DAR.BCS.BDa2b36b26AR.BCS.BDa2b36b15a2b48b15a2b48b26a2b48b37例子例子4續(xù)續(xù)60等值銜接(R.B=S.B) 自然銜接AR.BCS.BDa1b12b15a1b24b26a2b36b37ABCDa1b125a1b246a2b367例子例子4續(xù)續(xù)61等值銜接與自然銜接的區(qū)別:等值銜接與自然銜接

14、的區(qū)別:1. 等值銜接中不要求相等屬性值的屬性名等值銜接中不要求相等屬性值的屬性名一樣,而自然銜接要求相等屬性值的屬性一樣,而自然銜接要求相等屬性值的屬性名必需一樣,即兩關(guān)系只需在同名屬性才名必需一樣,即兩關(guān)系只需在同名屬性才干進(jìn)展自然銜接。干進(jìn)展自然銜接。2. 等值銜接不將反復(fù)屬性去掉,而自然銜等值銜接不將反復(fù)屬性去掉,而自然銜接去掉反復(fù)屬性,也可以說(shuō),自然銜接是接去掉反復(fù)屬性,也可以說(shuō),自然銜接是去掉反復(fù)列的等值銜接。去掉反復(fù)列的等值銜接。2.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算622.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算 外銜接外銜接 假設(shè)把舍棄的元組也保管在結(jié)果關(guān)系中,而在其他假設(shè)把舍

15、棄的元組也保管在結(jié)果關(guān)系中,而在其他屬性上填空值屬性上填空值(Null)(Null),這種銜接就叫做外銜接,這種銜接就叫做外銜接OUTER JOINOUTER JOIN。 左外銜接左外銜接 假設(shè)只把左邊關(guān)系假設(shè)只把左邊關(guān)系R R中要舍棄的元組保管就叫做左外中要舍棄的元組保管就叫做左外銜接銜接(LEFT OUTER JOIN(LEFT OUTER JOIN或或LEFT JOIN)LEFT JOIN) 右外銜接右外銜接 假設(shè)只把右邊關(guān)系假設(shè)只把右邊關(guān)系S S中要舍棄的元組保管就叫做右外中要舍棄的元組保管就叫做右外銜接銜接(RIGHT OUTER JOIN(RIGHT OUTER JOIN或或RIG

16、HT JOIN)RIGHT JOIN)。 632.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算以下圖是例4中關(guān)系R和關(guān)系S的全外自然銜接 ABCDa1b125a1b246a2b367a2b48nullnullb5null9(a) 全外自然銜接 642.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算ABCDa1b125a1b246a2b367a2b48null(b) 左外自然銜接 圖(b)是例4中關(guān)系R和關(guān)系S的左外銜接,圖(c)是右外銜接 ABCDa1b125a1b246a2b367nullb5null9(c) 右外自然銜接 654. 4. 除除記為記為R RS S。 除法運(yùn)算是二目運(yùn)算,設(shè)有關(guān)系除法運(yùn)算是二目

17、運(yùn)算,設(shè)有關(guān)系R RX X,Y Y與關(guān)系與關(guān)系S SY Y,Z Z,其中,其中X X,Y Y,Z Z為屬性集合,為屬性集合,R R中的中的Y Y與與S S中的中的Y Y可以有不同的屬性名,但對(duì)應(yīng)屬可以有不同的屬性名,但對(duì)應(yīng)屬性必需出自一樣的域。關(guān)系性必需出自一樣的域。關(guān)系R R除以關(guān)系除以關(guān)系S S所得的商所得的商是一個(gè)新關(guān)系是一個(gè)新關(guān)系P PX X,P P是是R R中滿(mǎn)足以下條件的元中滿(mǎn)足以下條件的元組在組在X X上的投影:元組在上的投影:元組在X X上分量值上分量值x x的象集的象集YxYx包包含含S S在在Y Y上投影的集合。記作:上投影的集合。記作: R RS=trX|trRy(S)S

18、=trX|trRy(S)YxYx 其中,其中,YxYx為為x x在在R R中的象集,中的象集,x= trXx= trX。2.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算662.3.2 專(zhuān)門(mén)的集合運(yùn)算專(zhuān)門(mén)的集合運(yùn)算除操作是同時(shí)從行和列角度進(jìn)展運(yùn)算RS67象集象集ABCDEa1b15d13a1b15d27a1b25d310a2b35d32a4b56d27a4b56d310a4b56d32a6b66d52tX=(a1,b1)的象集的象集CDE5d135d27tX=(a1,b2)的象集的象集CDE5d310tX=(a4,b5)的象集的象集CDE6d276d3106d32XZRZx=tZ|tR,tX=xZx68

19、除除ABCDEa1b15d13a1b15d27a1b25d310a2b35d32a2b15d52a3b26d13a4b56d27a4b56d310a4b56d32a6b66d52XY=CDEF6d27fa6d310fb6d32fcYR上分量值上分量值X 的象集的象集Yx包含包含S在在Y上的投影上的投影69除運(yùn)算實(shí)例除運(yùn)算實(shí)例學(xué)號(hào)課號(hào)成績(jī)S1C1AS1C2BS1C3BS2C1AS2C3BS3C1BS3C3BS4C1AS4C2AS5C2BS5C3BS5C1A課號(hào)課名C1數(shù)據(jù)結(jié)構(gòu)C3操作系統(tǒng)S1C1AS1C2BS1C3BS2C1AS2C3BS3C1BS3C3BS4C1AS4C2AS5C2BS5C3B

20、S5C1AC1數(shù)據(jù)結(jié)構(gòu)C3操作系統(tǒng)S1C1AS1C2BS1C3BS2C1AS2C3BS3C1BS3C3BS4C1AS4C2AS5C2BS5C3BS5C1A=S3B選課選課必修課必修課選擇了一切必修課表中的課程選擇了一切必修課表中的課程的學(xué)生的學(xué)號(hào)和成果的學(xué)生的學(xué)號(hào)和成果70例子例子5求 RS71隨堂練習(xí)隨堂練習(xí) ABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1BCDb1c2d1b2c1d3b2c3d2RS求 RS72關(guān)系代數(shù)查詢(xún)表達(dá)式關(guān)系代數(shù)查詢(xún)表達(dá)式 1、設(shè)教學(xué)數(shù)據(jù)庫(kù)中有、設(shè)教學(xué)數(shù)據(jù)庫(kù)中有3個(gè)關(guān)系:個(gè)關(guān)系:學(xué)生關(guān)系學(xué)生關(guān)系S(SNO,SNAME,AGE,SEX)學(xué)習(xí)關(guān)系學(xué)習(xí)關(guān)系SC(SNO,CNO,GRADE)課程關(guān)系課程關(guān)系C(CNO,CNAME,TEACHER)(1) 檢索學(xué)習(xí)課程號(hào)為檢索學(xué)習(xí)課程號(hào)為C2的學(xué)生學(xué)號(hào)與成果的學(xué)生學(xué)號(hào)與成果 (2) 檢索學(xué)習(xí)課程號(hào)為檢索學(xué)習(xí)課程號(hào)為C2的學(xué)生學(xué)號(hào)與姓名的學(xué)生學(xué)號(hào)與姓名 (3) 檢索選修課程名為檢索選修課程名為MATHS的學(xué)生學(xué)號(hào)與姓名的學(xué)生學(xué)號(hào)與姓名 73關(guān)系代數(shù)查詢(xún)表達(dá)式關(guān)系代數(shù)查詢(xún)表達(dá)式 用

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論