![數(shù)據(jù)庫原理與應(yīng)用課件第三章_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/24/dd5bc047-2cd6-4609-9e6f-633683cd1997/dd5bc047-2cd6-4609-9e6f-633683cd19971.gif)
![數(shù)據(jù)庫原理與應(yīng)用課件第三章_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/24/dd5bc047-2cd6-4609-9e6f-633683cd1997/dd5bc047-2cd6-4609-9e6f-633683cd19972.gif)
![數(shù)據(jù)庫原理與應(yīng)用課件第三章_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/24/dd5bc047-2cd6-4609-9e6f-633683cd1997/dd5bc047-2cd6-4609-9e6f-633683cd19973.gif)
![數(shù)據(jù)庫原理與應(yīng)用課件第三章_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/24/dd5bc047-2cd6-4609-9e6f-633683cd1997/dd5bc047-2cd6-4609-9e6f-633683cd19974.gif)
![數(shù)據(jù)庫原理與應(yīng)用課件第三章_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/24/dd5bc047-2cd6-4609-9e6f-633683cd1997/dd5bc047-2cd6-4609-9e6f-633683cd19975.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)庫原理與應(yīng)用數(shù)據(jù)庫原理與應(yīng)用數(shù)據(jù)庫原理與應(yīng)用第三章第三章 關(guān)系數(shù)據(jù)庫基本理論關(guān)系數(shù)據(jù)庫基本理論數(shù)據(jù)庫原理與應(yīng)用關(guān)系數(shù)據(jù)庫的幾個(gè)概念關(guān)系數(shù)據(jù)庫的幾個(gè)概念l關(guān)系數(shù)據(jù)庫l關(guān)系數(shù)據(jù)模型l關(guān)系模式l關(guān)系數(shù)據(jù)庫原理與應(yīng)用關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫l支持關(guān)系模型的數(shù)據(jù)庫。l在一個(gè)給定的應(yīng)用領(lǐng)域中,所有實(shí)體及實(shí)體之間聯(lián)系的關(guān)系的集合構(gòu)成一個(gè)關(guān)系數(shù)據(jù)庫。l關(guān)系數(shù)據(jù)庫應(yīng)用數(shù)學(xué)方法來處理數(shù)據(jù)庫中的數(shù)據(jù)。l80年代后,關(guān)系數(shù)據(jù)庫系統(tǒng)成為最重要、最流行的數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)庫原理與應(yīng)用關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫l系統(tǒng)而嚴(yán)格地提出關(guān)系模型的是美國ibm公司的e.f.codd1970年提出關(guān)系數(shù)據(jù)模型le.f.codd, “a rel
2、ational model of data for large shared data banks”, communication of the acm,1970之后,提出了關(guān)系代數(shù)和關(guān)系演算的概念1972年提出了關(guān)系的第一、第二、第三范式1974年提出了關(guān)系的bc范式數(shù)據(jù)庫原理與應(yīng)用關(guān)系模型關(guān)系模型l關(guān)系模型的組成關(guān)系數(shù)據(jù)結(jié)構(gòu)關(guān)系操作集合關(guān)系完整性約束數(shù)據(jù)庫原理與應(yīng)用1. 關(guān)系數(shù)據(jù)結(jié)構(gòu)關(guān)系數(shù)據(jù)結(jié)構(gòu)l單一的數(shù)據(jù)結(jié)構(gòu)-關(guān)系現(xiàn)實(shí)世界的實(shí)體以及實(shí)體間的各種聯(lián)系均用關(guān)系來表示l數(shù)據(jù)的邏輯結(jié)構(gòu)-二維表從用戶角度,關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表。 數(shù)據(jù)庫原理與應(yīng)用2.關(guān)系操作集合關(guān)系操作集合l1)
3、常用的關(guān)系操作查詢l選擇、投影、連接、除、并、交、差、積數(shù)據(jù)更新l插入、刪除、修改查詢的表達(dá)能力是其中最主要的部分?jǐn)?shù)據(jù)庫原理與應(yīng)用關(guān)系操作集合(續(xù))關(guān)系操作集合(續(xù))l2) 關(guān)系操作的特點(diǎn)集合操作方式,即操作的對(duì)象和結(jié)果都是集合。l非關(guān)系數(shù)據(jù)模型的數(shù)據(jù)操作方式:一次一記錄l文件系統(tǒng)的數(shù)據(jù)操作方式數(shù)據(jù)庫原理與應(yīng)用關(guān)系操作集合(續(xù))關(guān)系操作集合(續(xù))l3) 關(guān)系操作的語言關(guān)系數(shù)據(jù)語言可以分為三類關(guān)系數(shù)據(jù)語言可以分為三類 :關(guān)系代數(shù)、元組關(guān)關(guān)系代數(shù)、元組關(guān)系演算和域關(guān)系演算系演算和域關(guān)系演算。該三種語言在表達(dá)能力上是。該三種語言在表達(dá)能力上是完全等價(jià)的。完全等價(jià)的。 關(guān)系代數(shù)語言關(guān)系代數(shù)語言 例如例
4、如 isbl 元組關(guān)系演算語言元組關(guān)系演算語言 例如例如 aplha,quel關(guān)系數(shù)據(jù)語言關(guān)系數(shù)據(jù)語言 關(guān)系演算語言關(guān)系演算語言 域關(guān)系演算語言域關(guān)系演算語言 例如例如 qbe 具有關(guān)系代數(shù)和關(guān)系演算雙重特點(diǎn)的語言具有關(guān)系代數(shù)和關(guān)系演算雙重特點(diǎn)的語言 例如例如 sql 關(guān)系語言是一種高度非過程化的語言,用戶不必請(qǐng)求關(guān)系語言是一種高度非過程化的語言,用戶不必請(qǐng)求dba為其建為其建立特殊的存取路徑,存取路徑的選擇由立特殊的存取路徑,存取路徑的選擇由rdbms的優(yōu)化機(jī)制來完成。的優(yōu)化機(jī)制來完成。 數(shù)據(jù)庫原理與應(yīng)用3. 3. 關(guān)系的三類完整性約束關(guān)系的三類完整性約束l實(shí)體完整性通常由關(guān)系系統(tǒng)自動(dòng)支持l
5、參照完整性早期系統(tǒng)不支持,目前大型系統(tǒng)能自動(dòng)支持l用戶定義的完整性反映應(yīng)用領(lǐng)域需要遵循的約束條件,體現(xiàn)了具體領(lǐng)域中的語義約束用戶定義后由系統(tǒng)支持?jǐn)?shù)據(jù)庫原理與應(yīng)用關(guān)系模式關(guān)系模式關(guān)系模式是對(duì)關(guān)系的描述元組集合的結(jié)構(gòu)屬性構(gòu)成屬性來自的域 屬性與域之間的映象關(guān)系元組語義以及完整性約束條件屬性間的數(shù)據(jù)依賴關(guān)系集合數(shù)據(jù)庫原理與應(yīng)用關(guān)系模式的定義關(guān)系模式的定義關(guān)系模式可以形式化地表示為: r(u,d,dom,f) r 關(guān)系名u 組成該關(guān)系的屬性名集合d 屬性組u中屬性所來自的域dom 屬性向域的映象集合f 屬性間的數(shù)據(jù)依賴關(guān)系集合數(shù)據(jù)庫原理與應(yīng)用定義關(guān)系模式定義關(guān)系模式 (續(xù)續(xù))關(guān)系模式通常可以簡記為 r
6、 (u) 或 r (a1,a2,an) r 關(guān)系名a1,a2,an 屬性名注:域名及屬性向域的映象常常直接說明為屬性的類型、長度數(shù)據(jù)庫原理與應(yīng)用關(guān)系模式與關(guān)系關(guān)系模式與關(guān)系關(guān)系模式是型,關(guān)系是值關(guān)系模式對(duì)關(guān)系的描述,是靜態(tài)的、穩(wěn)定的。關(guān)系關(guān)系模式在某一時(shí)刻的狀態(tài)或內(nèi)容,是動(dòng)態(tài)的、隨時(shí)間不斷變化的。關(guān)系模式和關(guān)系往往統(tǒng)稱為關(guān)系,通過上下文加以區(qū)別數(shù)據(jù)庫原理與應(yīng)用一些基本概念一些基本概念l域(domain)l元組、元數(shù)和基數(shù)l鍵l主屬性和非主屬性數(shù)據(jù)庫原理與應(yīng)用 域(域(domain)l域是一組具有相同數(shù)據(jù)類型的值的集合。例:整數(shù)實(shí)數(shù)介于1和10之間的整數(shù)長度指定長度的字符串集合男,女介于某個(gè)取值
7、范圍的日期l同列有相同的域,不同列的域可以相同。數(shù)據(jù)庫原理與應(yīng)用2.元組、元數(shù)和基數(shù)元組、元數(shù)和基數(shù)l元組關(guān)系表中的一行稱為一個(gè)元組。一個(gè)元組表示實(shí)體集中的一個(gè)實(shí)體。不能存在兩個(gè)相同的元組。l元數(shù)關(guān)系中屬性的個(gè)數(shù)也稱為關(guān)系的“目”或者“度”l基數(shù)元組的個(gè)數(shù)稱為基數(shù)。數(shù)據(jù)庫原理與應(yīng)用3.鍵(鍵(key)l超鍵超鍵在一個(gè)關(guān)系中,能惟一標(biāo)識(shí)元組的屬性或?qū)傩约Q為關(guān)系的超鍵。在一個(gè)關(guān)系中,能惟一標(biāo)識(shí)元組的屬性或?qū)傩约Q為關(guān)系的超鍵。 l候選鍵候選鍵如果一個(gè)屬性集能惟一標(biāo)識(shí)元組,且又不含有多余的屬性,那么這如果一個(gè)屬性集能惟一標(biāo)識(shí)元組,且又不含有多余的屬性,那么這個(gè)屬性集稱為關(guān)系的候選鍵。個(gè)屬性集稱為關(guān)
8、系的候選鍵。 l主鍵主鍵若一個(gè)關(guān)系中有多個(gè)候選鍵,則選其中的一個(gè)為關(guān)系的主鍵。若一個(gè)關(guān)系中有多個(gè)候選鍵,則選其中的一個(gè)為關(guān)系的主鍵。l外鍵外鍵若一個(gè)關(guān)系若一個(gè)關(guān)系r中包含有另一個(gè)關(guān)系中包含有另一個(gè)關(guān)系s的主鍵所對(duì)應(yīng)的屬性組的主鍵所對(duì)應(yīng)的屬性組f,則稱,則稱f為為r的外鍵。并稱關(guān)系的外鍵。并稱關(guān)系s為參照關(guān)系,關(guān)系為參照關(guān)系,關(guān)系r為依賴關(guān)系。為依賴關(guān)系。參照關(guān)系和依賴關(guān)系不一定是不同關(guān)系。 數(shù)據(jù)庫原理與應(yīng)用4.主屬性與非主屬性主屬性與非主屬性l主屬性包含在任何一個(gè)候選鍵中的屬性。l非主屬性不包含在任何一個(gè)候選鍵中的屬性。也叫非鍵屬性。數(shù)據(jù)庫原理與應(yīng)用舉例舉例l學(xué)生、課程、學(xué)生與課程之間的關(guān)系模
9、式學(xué)生(學(xué)號(hào),姓名,性別,專業(yè)號(hào),年齡)課程(課程號(hào),課程名,學(xué)分)選修(學(xué)號(hào),課程號(hào),成績)數(shù)據(jù)庫原理與應(yīng)用一些基本表示方法一些基本表示方法l用前面的大寫字母a、b、c等表示單個(gè)屬性。l用后面的大寫字母w、x、y、z表示屬性集。l用小寫字母表示屬性值。l用t表示元組。l主鍵的屬性下面加下劃線。l外鍵的屬性下面加波浪線。 數(shù)據(jù)庫原理與應(yīng)用基本關(guān)系的性質(zhì)基本關(guān)系的性質(zhì) 列是同質(zhì)的(homogeneous)每一列中的分量是同一類型的數(shù)據(jù),來自同一個(gè)域 不同的列可出自同一個(gè)域其中的每一列稱為一個(gè)屬性不同的屬性要給予不同的屬性名數(shù)據(jù)庫原理與應(yīng)用基本關(guān)系的性質(zhì)基本關(guān)系的性質(zhì)(續(xù)續(xù)) 列的順序無所謂列的次
10、序可以任意交換遵循這一性質(zhì)的數(shù)據(jù)庫產(chǎn)品(如oracle),增加新屬性時(shí),永遠(yuǎn)是插至最后一列。但也有許多關(guān)系數(shù)據(jù)庫產(chǎn)品沒有遵循這一性質(zhì),例如foxpro仍然區(qū)分了屬性順序。數(shù)據(jù)庫原理與應(yīng)用基本關(guān)系的性質(zhì)基本關(guān)系的性質(zhì)(續(xù)續(xù)) 任意兩個(gè)元組不能完全相同許多關(guān)系數(shù)據(jù)庫產(chǎn)品沒有遵循這一性質(zhì)。例如:oracle,foxpro等都允許關(guān)系表中存在兩個(gè)完全相同的元組,除非用戶特別定義了相應(yīng)的約束條件。數(shù)據(jù)庫原理與應(yīng)用基本關(guān)系的性質(zhì)基本關(guān)系的性質(zhì)(續(xù)續(xù)) 行的順序無所謂行的次序可以任意交換遵循這一性質(zhì)的數(shù)據(jù)庫產(chǎn)品(如oracle),插入一個(gè)元組時(shí)永遠(yuǎn)插至最后一行。但也有許多關(guān)系數(shù)據(jù)庫產(chǎn)品沒有遵循這一性質(zhì),例如
11、foxpro仍然區(qū)分了元組的順序。數(shù)據(jù)庫原理與應(yīng)用基本關(guān)系的性質(zhì)基本關(guān)系的性質(zhì)(續(xù)續(xù)) 分量必須取原子值每一個(gè)分量都必須是不可分的數(shù)據(jù)項(xiàng)。這是規(guī)范條件中最基本的一條。數(shù)據(jù)庫原理與應(yīng)用關(guān)系的三類完整性約束關(guān)系的三類完整性約束l實(shí)體完整性l參照完整性l用戶定義的完整性數(shù)據(jù)庫原理與應(yīng)用實(shí)體完整性實(shí)體完整性l實(shí)體完整性規(guī)則(entity integrity)若屬性a是基本關(guān)系r的主屬性,則屬性a不能取空值數(shù)據(jù)庫原理與應(yīng)用實(shí)體完整性實(shí)體完整性(續(xù)續(xù))關(guān)系模型必須遵守實(shí)體完整性規(guī)則的原因(1) 實(shí)體完整性規(guī)則是針對(duì)基本關(guān)系而言的。一個(gè)基本表通常對(duì)應(yīng)現(xiàn)實(shí)世界的一個(gè)實(shí)體集或多對(duì)多聯(lián)系。(2) 現(xiàn)實(shí)世界中的實(shí)體
12、和實(shí)體間的聯(lián)系都是可區(qū)分的,即它們具有某種唯一性標(biāo)識(shí)。(3) 相應(yīng)地,關(guān)系模型中以主鍵作為唯一性標(biāo)識(shí)。數(shù)據(jù)庫原理與應(yīng)用實(shí)體完整性實(shí)體完整性(續(xù)續(xù))關(guān)系模型必須遵守實(shí)體完整性規(guī)則的原因(續(xù))(4) 主鍵中的屬性不能取空值。 空值就是“不知道”或“無意義”的值。 主鍵中的屬性取空值,就說明存在某個(gè)不可標(biāo)識(shí)的實(shí)體,即存在不可區(qū)分的實(shí)體,這與第(2)點(diǎn)相矛盾,因此這個(gè)規(guī)則稱為實(shí)體完整性。數(shù)據(jù)庫原理與應(yīng)用實(shí)體完整性實(shí)體完整性(續(xù)續(xù))注意實(shí)體完整性規(guī)則規(guī)定基本關(guān)系的所有主屬性都不能取空值舉例選修(學(xué)號(hào),課程號(hào),成績) “學(xué)號(hào)、課程號(hào)”為主鍵,則兩個(gè)屬性都不能為空值。數(shù)據(jù)庫原理與應(yīng)用參照完整性參照完整性1.
13、 關(guān)系間的引用2. 參照完整性規(guī)則數(shù)據(jù)庫原理與應(yīng)用1. 關(guān)系間的引用關(guān)系間的引用在關(guān)系模型中實(shí)體及實(shí)體間的聯(lián)系都是用關(guān)系來描述的,因此可能存在著關(guān)系與關(guān)系間的引用。例1 學(xué)生實(shí)體、專業(yè)實(shí)體以及專業(yè)與學(xué)生 間的一對(duì)多聯(lián)系 學(xué)生(學(xué)號(hào),姓名,性別,專業(yè)號(hào),年齡) 專業(yè)(專業(yè)號(hào),專業(yè)名)數(shù)據(jù)庫原理與應(yīng)用關(guān)系間的引用關(guān)系間的引用(續(xù)續(xù))例2 學(xué)生、課程、學(xué)生與課程之間的多對(duì) 多聯(lián)系 學(xué)生(學(xué)號(hào),姓名,性別,專業(yè)號(hào),年齡) 課程(課程號(hào),課程名,學(xué)分) 選修(學(xué)號(hào),課程號(hào),成績)數(shù)據(jù)庫原理與應(yīng)用關(guān)系間的引用關(guān)系間的引用(續(xù)續(xù))例3 學(xué)生實(shí)體及其內(nèi)部的領(lǐng)導(dǎo)聯(lián)系(一對(duì)多) 學(xué)生(學(xué)號(hào),姓名,性別,專業(yè)號(hào),年
14、齡,班長)學(xué)學(xué)號(hào)號(hào)姓姓名名性性別別專專業(yè)業(yè)號(hào)號(hào)年年齡齡班班長長801張張三三女女0119802802李李四四男男0120803王王五五男男0120802804趙趙六六女女0220805805錢錢七七男男0219數(shù)據(jù)庫原理與應(yīng)用2. 參照完整性規(guī)則參照完整性規(guī)則若屬性(或?qū)傩越M)f是基本關(guān)系r的外鍵它與基本關(guān)系s的主鍵ks相對(duì)應(yīng)(基本關(guān)系r和s不一定是不同的關(guān)系),則對(duì)于r中每個(gè)元組在f上的值必須為: 或者取空值(f的每個(gè)屬性值均為空值) 或者等于s中某個(gè)元組的主鍵值。數(shù)據(jù)庫原理與應(yīng)用學(xué)學(xué) 號(hào)號(hào)姓姓 名名性性 別別專專 業(yè)業(yè) 號(hào)號(hào)年年 齡齡8 0 1張張 三三女女0 11 98 0 2李李 四四
15、男男0 12 08 0 3王王 五五男男0 12 08 0 4趙趙 六六女女0 22 08 0 5錢錢 七七男男0 21 9專專 業(yè)業(yè) 號(hào)號(hào)專專 業(yè)業(yè) 名名0 1信信 息息0 2數(shù)數(shù) 學(xué)學(xué)0 3計(jì)計(jì) 算算 機(jī)機(jī)學(xué)生(學(xué)生(學(xué)號(hào)學(xué)號(hào),姓名,性別,專業(yè)號(hào),年齡),姓名,性別,專業(yè)號(hào),年齡)專業(yè)(專業(yè)(專業(yè)號(hào)專業(yè)號(hào),專業(yè)名),專業(yè)名)數(shù)據(jù)庫原理與應(yīng)用 學(xué)學(xué) 號(hào)號(hào)課課 程程號(hào)號(hào)成成 績績801049280103788010285802038280204908030488學(xué)生學(xué)生學(xué)生選課學(xué)生選課課程課程數(shù)據(jù)庫原理與應(yīng)用參照完整性規(guī)則參照完整性規(guī)則(續(xù)續(xù))學(xué)生關(guān)系中每個(gè)元組的“專業(yè)號(hào)”屬性只取下面兩類值:
16、(1)空值,表示尚未給該學(xué)生分配專業(yè)(2)非空值,這時(shí)該值必須是專業(yè)關(guān)系中某個(gè)元組的“專業(yè)號(hào)”值,表示該學(xué)生不可能分配到一個(gè)不存在的專業(yè)中數(shù)據(jù)庫原理與應(yīng)用參照完整性規(guī)則參照完整性規(guī)則(續(xù)續(xù)) 選修(學(xué)號(hào),課程號(hào),成績)“學(xué)號(hào)”和“課程號(hào)”是選修關(guān)系中的主屬性按照實(shí)體完整性和參照完整性規(guī)則,它們只能取相應(yīng)被參照關(guān)系中已經(jīng)存在的主鍵值數(shù)據(jù)庫原理與應(yīng)用參照完整性規(guī)則參照完整性規(guī)則(續(xù)續(xù))學(xué)生(學(xué)號(hào),姓名,性別,專業(yè)號(hào),年齡,班長)“班長”屬性值可以取兩類值:(1)空值,表示該學(xué)生所在班級(jí)尚未選出班長,或該學(xué)生本人即是班長;(2)非空值,這時(shí)該值必須是本關(guān)系中某個(gè)元組的學(xué)號(hào)值數(shù)據(jù)庫原理與應(yīng)用用戶定義的
17、完整性用戶定義的完整性l用戶定義的完整性是針對(duì)某一具體關(guān)系數(shù)據(jù)庫的約束條件,反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要求。l關(guān)系模型應(yīng)提供定義和檢驗(yàn)這類完整性的機(jī)制,以便用統(tǒng)一的系統(tǒng)的方法處理它們,而不要由應(yīng)用程序承擔(dān)這一功能。數(shù)據(jù)庫原理與應(yīng)用用戶定義的完整性用戶定義的完整性(續(xù)續(xù))例: 課程(課程號(hào),課程名,學(xué)分)“課程號(hào)”屬性必須取唯一值非主屬性“課程名”也不能取空值“學(xué)分”屬性只能取值1,2,3,4數(shù)據(jù)庫原理與應(yīng)用關(guān)系代數(shù)關(guān)系代數(shù)l 概述l 傳統(tǒng)的集合運(yùn)算l 專門的關(guān)系運(yùn)算數(shù)據(jù)庫原理與應(yīng)用概述概述1. 關(guān)系代數(shù)2. 運(yùn)算的三要素3. 關(guān)系代數(shù)運(yùn)算的三個(gè)要素4. 關(guān)系代數(shù)運(yùn)算的分類5.
18、表示記號(hào)數(shù)據(jù)庫原理與應(yīng)用概述概述1.關(guān)系代數(shù)一種抽象的查詢語言用對(duì)關(guān)系的運(yùn)算來表達(dá)查詢數(shù)據(jù)庫原理與應(yīng)用概述概述(續(xù)續(xù))2關(guān)系代數(shù)運(yùn)算的三個(gè)要素運(yùn)算對(duì)象:關(guān)系運(yùn)算結(jié)果:關(guān)系運(yùn)算符:四類數(shù)據(jù)庫原理與應(yīng)用概述概述(續(xù)續(xù))l集合運(yùn)算符將關(guān)系看成元組的集合運(yùn)算是從關(guān)系的“水平”方向即行的角度來進(jìn)行l(wèi)專門的關(guān)系運(yùn)算符不僅涉及行而且涉及列l(wèi)算術(shù)比較符輔助專門的關(guān)系運(yùn)算符進(jìn)行操作l邏輯運(yùn)算符輔助專門的關(guān)系運(yùn)算符進(jìn)行操作數(shù)據(jù)庫原理與應(yīng)用集合運(yùn)算符-并差交廣義笛卡爾積比較運(yùn)算符 大于大于等于小于小于等于等于不等于運(yùn)算符含義運(yùn)算符含義概述概述(續(xù)續(xù))數(shù)據(jù)庫原理與應(yīng)用專門的關(guān)系運(yùn)算符 選擇投影連接除邏輯運(yùn)算符 非與或
19、運(yùn)算符含義運(yùn)算符含義概述概述(續(xù)續(xù))數(shù)據(jù)庫原理與應(yīng)用概述概述(續(xù)續(xù))4關(guān)系代數(shù)運(yùn)算的分類 傳統(tǒng)的集合運(yùn)算 并、差、交、廣義笛卡爾積專門的關(guān)系運(yùn)算 選擇、投影、連接、除數(shù)據(jù)庫原理與應(yīng)用概述概述(續(xù)續(xù))5表示記號(hào) (1) r,tr,tai 設(shè)關(guān)系模式為r(a1,a2,an)它的一個(gè)關(guān)系設(shè)為r。tr表示t是r的一個(gè)元組tai則表示元組t中相應(yīng)于屬性ai的一個(gè)分量 數(shù)據(jù)庫原理與應(yīng)用概述概述(續(xù)續(xù))(2) tr ts r為n目關(guān)系,s為m目關(guān)系。tr r,tss, tr ts稱為元組的連接。它是一個(gè)n + m列的元組,前n個(gè)分量為r中的一個(gè)n元組,后m個(gè)分量為s中的一個(gè)m元組。 數(shù)據(jù)庫原理與應(yīng)用關(guān)系代數(shù)
20、關(guān)系代數(shù)l 概述l 傳統(tǒng)的集合運(yùn)算l 專門的關(guān)系運(yùn)算數(shù)據(jù)庫原理與應(yīng)用傳統(tǒng)的集合運(yùn)算傳統(tǒng)的集合運(yùn)算l并l差l交l廣義笛卡爾積數(shù)據(jù)庫原理與應(yīng)用1. 并(并(union)lr和s具有相同的目n(即兩個(gè)關(guān)系都有n個(gè)屬性)相應(yīng)的屬性取自同一個(gè)域lrs 仍為n目關(guān)系,由屬于r或?qū)儆趕的元組組成 rs = t|t rt s 數(shù)據(jù)庫原理與應(yīng)用并并(續(xù)續(xù))abca1b1c1a1b2c2a2b2c1abca1b1c1a1b2c2a1b3c2a2b2c1abca1b2c2a1b3c2a2b2c1rsrs= ?數(shù)據(jù)庫原理與應(yīng)用2. 差(差(difference)lr和s具有相同的目n相應(yīng)的屬性取自同一個(gè)域lr - s
21、 仍為n目關(guān)系,由屬于r而不屬于s的所有元組組成 r -s = t|trts 數(shù)據(jù)庫原理與應(yīng)用差差(續(xù)續(xù))abca1b1c1a1b2c2a2b2c1abca1b1c1abca1b2c2a1b3c2a2b2c1rsr-s= ?數(shù)據(jù)庫原理與應(yīng)用3. 交(交(intersection)lr和s具有相同的目n相應(yīng)的屬性取自同一個(gè)域lrs仍為n目關(guān)系,由既屬于r又屬于s的元組組成 rs = t|t rt s 數(shù)據(jù)庫原理與應(yīng)用交交 (續(xù)續(xù))abca1b1c1a1b2c2a2b2c1abca1b2c2a2b2c1abca1b2c2a1b3c2a2b2c1rsr s= ?數(shù)據(jù)庫原理與應(yīng)用4. 廣義笛卡爾積廣義
22、笛卡爾積(extended cartesian product)lrn目關(guān)系,k1個(gè)元組lsm目關(guān)系,k2個(gè)元組lrs 列:(n+m)列的元組的集合l元組的前n列是關(guān)系r的一個(gè)元組l后m列是關(guān)系s的一個(gè)元組行:k1k2個(gè)元組lrs = tr ts |tr r tss 數(shù)據(jù)庫原理與應(yīng)用廣義笛卡爾積廣義笛卡爾積 (續(xù)續(xù))abca1b1c1a1b2c2a2b2c1abca1b1c1a1b1c1a1b1c1a1b2c2a1b2c2a1b2c2a2b2c1a2b2c1a2b2c1abca1b2c2a1b3c2a2b2c1rsr s =abca1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2
23、b2c1a1b2c2a1b3c2a2b2c1?數(shù)據(jù)庫原理與應(yīng)用關(guān)系代數(shù)關(guān)系代數(shù)l概述l傳統(tǒng)的集合運(yùn)算l專門的關(guān)系運(yùn)算數(shù)據(jù)庫原理與應(yīng)用專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算l選擇l投影l(fā)連接l除數(shù)據(jù)庫原理與應(yīng)用1. 選擇(選擇(selection) l1) 選擇又稱為限制(restriction)l2) 選擇運(yùn)算符的含義在關(guān)系r中選擇滿足給定條件的諸元組 f(r) = t|trf(t)= 真f:選擇條件,是一個(gè)邏輯表達(dá)式,基本形式為: ( x1y1 ) ( x2y2 )l:比較運(yùn)算符(,或)lx1,y1等:屬性名、常量、簡單函數(shù);屬性名也可以用它的序號(hào)來代替;l:邏輯運(yùn)算符(或)l :表示任選項(xiàng)l:表示上
24、述格式可以重復(fù)下去數(shù)據(jù)庫原理與應(yīng)用選擇(續(xù))選擇(續(xù))l3) 選擇運(yùn)算是從行的角度進(jìn)行的運(yùn)算 l4) 舉例:設(shè)有一個(gè)學(xué)生-課程數(shù)據(jù)庫,包括學(xué)生關(guān)系student、課程關(guān)系course和選修關(guān)系sc。數(shù)據(jù)庫原理與應(yīng)用選擇(續(xù))選擇(續(xù))學(xué)學(xué) 號(hào)號(hào)sno姓姓 名名sname性性 別別ssex年年 齡齡sage所所 在系在系sdept95001李勇李勇男男20cs95002劉晨劉晨女女19is95003王敏王敏女女18ma95004張立張立男男19is student例1例2數(shù)據(jù)庫原理與應(yīng)用選擇(續(xù))選擇(續(xù))course課程號(hào)課程號(hào)課程名課程名先行課先行課學(xué)分學(xué)分cnocnamecpnoccred
25、it1數(shù)據(jù)庫數(shù)據(jù)庫542數(shù)學(xué)數(shù)學(xué) 23信息系統(tǒng)信息系統(tǒng)144操作系統(tǒng)操作系統(tǒng)635數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)746數(shù)據(jù)處理數(shù)據(jù)處理 27pascal語言語言64例9數(shù)據(jù)庫原理與應(yīng)用選擇(續(xù))選擇(續(xù)) sc學(xué)學(xué) 號(hào)號(hào)課課 程程 號(hào)號(hào)成成 績績snocnograde9500119295001285950013889500229095002380例7例9數(shù)據(jù)庫原理與應(yīng)用選擇(續(xù))選擇(續(xù))例1 查詢信息系(is系)全體學(xué)生 sdept = is (student)或 5 =is (student)結(jié)果: snosnamessexsagesdept95002劉晨劉晨女女19is95004張立張立男男19is數(shù)
26、據(jù)庫原理與應(yīng)用選擇(續(xù))選擇(續(xù))例2 查詢年齡小于20歲的學(xué)生 sage 20(student) 或 4 20(student)結(jié)果: snosnamessexsagesdept95002劉晨劉晨女女19is95003王敏王敏女女18ma95004張立張立男男19is 數(shù)據(jù)庫原理與應(yīng)用2. 投影(投影(projection) l1)投影運(yùn)算符的含義從r中選擇出若干屬性列組成新的關(guān)系 a(r) = ta | t r a:r中的屬性列 數(shù)據(jù)庫原理與應(yīng)用2. 投影(投影(projection) l2)投影操作主要是從列的角度進(jìn)行運(yùn)算l但投影之后不僅取消了原關(guān)系中的某些列,而且還可能取消某些元組(避
27、免重復(fù)行)數(shù)據(jù)庫原理與應(yīng)用投影(續(xù))投影(續(xù))學(xué)學(xué) 號(hào)號(hào)sno姓姓 名名sname性性 別別ssex年年 齡齡sage所所 在系在系sdept95001李勇李勇男男20cs95002劉晨劉晨女女19is95003王敏王敏女女18ma95004張立張立男男19is student例4例3數(shù)據(jù)庫原理與應(yīng)用投影(續(xù))投影(續(xù))l3) 舉例例3 查詢學(xué)生的姓名和所在系即求student關(guān)系上學(xué)生姓名和所在系兩個(gè)屬性上的投影 sname,sdept(student)或 2,5(student)結(jié)果:數(shù)據(jù)庫原理與應(yīng)用投影(續(xù))投影(續(xù))snamesdept李勇李勇cs劉晨劉晨is王敏王敏ma張立張立is數(shù)
28、據(jù)庫原理與應(yīng)用投影(續(xù))投影(續(xù))例4 查詢學(xué)生關(guān)系student中都有哪些系 sdept(student)結(jié)果:sdeptcsisma數(shù)據(jù)庫原理與應(yīng)用3. 連接(連接(join) l1)連接也稱為連接l2)連接運(yùn)算的含義從兩個(gè)關(guān)系的笛卡爾積中選取屬性間滿足一定條件的元組 r s = | tr rts stratsb la和b:分別為r和s上度數(shù)相等且可比的屬性組l:比較運(yùn)算符 連接運(yùn)算從r和s的廣義笛卡爾積rs中選?。╮關(guān)系)在a屬性組上的值與(s關(guān)系)在b屬性組上值滿足比較關(guān)系的元組。 abtr ts數(shù)據(jù)庫原理與應(yīng)用 連接連接(續(xù)續(xù)) l3)兩類常用連接運(yùn)算等值連接(equijoin) l
29、什么是等值連接為“”的連接運(yùn)算稱為等值連接 l等值連接的含義從關(guān)系r與s的廣義笛卡爾積中選取a、b屬性值相等的那些元組,即等值連接為: r s = | tr rts stra = tsb a=btr ts數(shù)據(jù)庫原理與應(yīng)用 連接連接(續(xù)續(xù)) 自然連接(natural join) l什么是自然連接自然連接是一種特殊的等值連接l兩個(gè)關(guān)系中進(jìn)行比較的分量必須是相同的屬性組l在結(jié)果中把重復(fù)的屬性列去掉l自然連接的含義r和s具有相同的屬性組b r s = | tr rts strb = tsb tr ts數(shù)據(jù)庫原理與應(yīng)用連接連接(續(xù)續(xù))l4)一般的連接操作是從行的角度進(jìn)行運(yùn)算。 abrsl自然連接還需要取
30、消重復(fù)列,所以是同時(shí)從行和列的角度進(jìn)行運(yùn)算。 數(shù)據(jù)庫原理與應(yīng)用連接連接(續(xù)續(xù))l5)舉例 例5 abca1b15a1b26a2b38a2b412beb13b27b310b32b52rs數(shù)據(jù)庫原理與應(yīng)用連接連接(續(xù)續(xù)) r s= ar.bcs.bea1b15b27a1b15b310a1b26b27a1b26b310a2b38b310 ce?數(shù)據(jù)庫原理與應(yīng)用連接連接(續(xù)續(xù)) 等值連接 r s =r.b=s.b ar.bcs.bea1b15b13a1b26b27a2b38b310a2b38b32?數(shù)據(jù)庫原理與應(yīng)用連接連接(續(xù)續(xù)) 自然連接 r s = abcea1b153a1b267a2b3810a
31、2b382?數(shù)據(jù)庫原理與應(yīng)用連接舉例連接舉例例9 查詢至少選修了一門其直接先行課為5號(hào)課程的課程的學(xué)生姓名。 sname(cpno=5(course sc student) sname(cpno=5(course) sc sno,sname(student)sname (sno (cpno=5 (course) sc) sno,sname (student) 學(xué)號(hào)學(xué)號(hào)sno姓姓 名名sname性性 別別ssex年年 齡齡sage所所 在系在系sdept95001李勇李勇男男20cs95002劉晨劉晨女女19is95003王敏王敏女女18ma95004張立張立男男19is student例9學(xué)學(xué)
32、 號(hào)號(hào)課課 程程 號(hào)號(hào)成成 績績snocnograde9500119295001285950013889500229095002380課程號(hào)課程號(hào)課程名課程名先行課先行課學(xué)分學(xué)分cnocnamecpnoccredit1數(shù)據(jù)庫數(shù)據(jù)庫542數(shù)學(xué)數(shù)學(xué) 23信息系統(tǒng)信息系統(tǒng)144操作系統(tǒng)操作系統(tǒng)635數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)746數(shù)據(jù)處理數(shù)據(jù)處理 27pascal語言語言64course sc數(shù)據(jù)庫原理與應(yīng)用外連接(外連接(outer join)l兩個(gè)關(guān)系r和s在做自然連接時(shí),選擇兩個(gè)關(guān)系在公共屬性上值相等的元組構(gòu)成新的關(guān)系。此時(shí),關(guān)系r中某些元組有可能在s中不存在公共屬性上值相等的元組,從而造成r中這些元組
33、在操作時(shí)被舍棄了,同樣,s中某些元組也可能被舍棄。l如果把舍棄的元組也保存在結(jié)果關(guān)系中,而在其他屬性上填空值(null),那么這種連接就叫做外連接(outer join)。如果只把左邊關(guān)系r中要舍棄的元組保留就叫做左外連接(left outer join或left join),如果只把右邊關(guān)系s中要舍棄的元組保留就叫做右外連接(right outer join或right join)。 數(shù)據(jù)庫原理與應(yīng)用abcea1a1a2a2a2nullb1b2b3b3b4b5 568812null37102null2abcea1a1a2a2a2b1b2b3b3b4 56881237102nullabcea1a1a2a2nullb1b2b3b3b5 5688null371022abca1a1a2a2b1b2b3b456812beb1b2b3b3b5371022關(guān)系關(guān)系r 關(guān)系關(guān)系s外連接外連接左外連接左外連接右外連接右外連接外連接的例子外連接的例子數(shù)據(jù)庫原理與應(yīng)用象集象集z 給定一個(gè)關(guān)系r(x,z),x和z為屬性組。當(dāng)tx=x時(shí),x在r中的象集(images set)為: zx=tz|t r,tx=x 它表示r中屬性組x上值為x的諸元組在z上分量的集合。 數(shù)據(jù)庫原理與
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 施工現(xiàn)場(chǎng)施工防臺(tái)風(fēng)災(zāi)害威脅制度
- 數(shù)字化時(shí)代下的客戶分析與銷售策略
- 現(xiàn)代辦公技術(shù)與應(yīng)用實(shí)踐培訓(xùn)
- 數(shù)學(xué)圖形在兒童智力開發(fā)中的作用
- 科學(xué)實(shí)驗(yàn)教學(xué)對(duì)小學(xué)生綜合素質(zhì)的培養(yǎng)策略
- 項(xiàng)目突發(fā)環(huán)境事件應(yīng)急預(yù)案
- 二手車批發(fā)合作合同協(xié)議
- 個(gè)人向個(gè)人臨時(shí)借款合同模板
- 上海市租賃合同模板及示例
- 不銹鋼期貨電子交易合同
- 《醫(yī)療機(jī)構(gòu)環(huán)境表面清潔與消毒管理規(guī)范》-華西醫(yī)院案例
- 2024年黑龍江農(nóng)業(yè)工程職業(yè)學(xué)院單招職業(yè)適應(yīng)性測(cè)試題庫
- 合同簽訂執(zhí)行風(fēng)險(xiǎn)管控培訓(xùn)
- DB43-T 3022-2024黃柏栽培技術(shù)規(guī)程
- 【壓縮式落葉清掃機(jī)設(shè)計(jì)(論文)6900字】
- 水利水電工程工地試驗(yàn)室建設(shè)導(dǎo)則(征求意見稿)
- 理發(fā)店美容美發(fā)場(chǎng)所衛(wèi)生管理制度
- 成人失禁相關(guān)性皮炎的預(yù)防與護(hù)理
- 人教版(2024新版)七年級(jí)上冊(cè)數(shù)學(xué)第六章《幾何圖形初步》測(cè)試卷(含答案)
- 2025屆高三數(shù)學(xué)一輪總復(fù)習(xí) 第六章 專題六 幾何體的外接球與內(nèi)切球問題配套課件
- 引水隧洞施工支洞專項(xiàng)施工方案
評(píng)論
0/150
提交評(píng)論