版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
關(guān)系模型和關(guān)系運(yùn)算第一頁(yè),共一百一十三頁(yè),2022年,8月28日
第二章關(guān)系模型和關(guān)系運(yùn)算
2.1關(guān)系模型概述2.2關(guān)系數(shù)據(jù)結(jié)構(gòu)及完整性約束2.3關(guān)系代數(shù)數(shù)據(jù)庫(kù)系統(tǒng)原理第二頁(yè),共一百一十三頁(yè),2022年,8月28日
第二章關(guān)系模型和關(guān)系運(yùn)算學(xué)習(xí)要求:
深刻理解關(guān)系模型的相關(guān)概念,即關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作和關(guān)系完整性約束;掌握關(guān)系代數(shù)的基本運(yùn)算和應(yīng)用。學(xué)習(xí)重點(diǎn):關(guān)系模型的基本概念;關(guān)系模型的三類(lèi)完整性約束;關(guān)系代數(shù)的選擇、連接、除等運(yùn)算數(shù)據(jù)庫(kù)系統(tǒng)原理第三頁(yè),共一百一十三頁(yè),2022年,8月28日第二章關(guān)系模型和關(guān)系運(yùn)算2.1關(guān)系模型概述2.2關(guān)系數(shù)據(jù)結(jié)構(gòu)及完整性約束2.3關(guān)系代數(shù)數(shù)據(jù)庫(kù)系統(tǒng)原理第四頁(yè),共一百一十三頁(yè),2022年,8月28日
第一節(jié)
關(guān)系模型概述一、關(guān)系理論的產(chǎn)生與發(fā)展系統(tǒng)而嚴(yán)格地提出關(guān)系模型的是美國(guó)IBM公司的1970年提出關(guān)系數(shù)據(jù)模型之后,提出了關(guān)系代數(shù)和關(guān)系演算的概念1972年提出了關(guān)系的第一、第二、第三范式1974年提出了關(guān)系的BC范式關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)是支持關(guān)系模型的數(shù)據(jù)庫(kù)系統(tǒng)80年代后,關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)成為最重要、最流行的數(shù)據(jù)庫(kù)系統(tǒng)第二章關(guān)系模型和關(guān)系運(yùn)算第五頁(yè),共一百一十三頁(yè),2022年,8月28日關(guān)系理論的產(chǎn)生與發(fā)展(續(xù))典型實(shí)驗(yàn)系統(tǒng)SystemRUniversityINGRES典型商用系統(tǒng)ORACLESYBASEINFORMIXDB2SQLSERVERINGRES第二章關(guān)系模型和關(guān)系運(yùn)算第六頁(yè),共一百一十三頁(yè),2022年,8月28日第一節(jié)關(guān)系模型概述二、關(guān)系模型的組成關(guān)系數(shù)據(jù)結(jié)構(gòu)關(guān)系操作關(guān)系完整性約束第二章關(guān)系模型和關(guān)系運(yùn)算第七頁(yè),共一百一十三頁(yè),2022年,8月28日(一)關(guān)系數(shù)據(jù)結(jié)構(gòu)單一的數(shù)據(jù)結(jié)構(gòu)----關(guān)系現(xiàn)實(shí)世界的實(shí)體以及實(shí)體間的各種聯(lián)系均用關(guān)系來(lái)表示。數(shù)據(jù)的邏輯結(jié)構(gòu)----二維表從用戶角度,關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是二維表。第二章關(guān)系模型和關(guān)系運(yùn)算
學(xué)號(hào)姓名性別專(zhuān)業(yè)宿舍0309113101陳浩男計(jì)算機(jī)松園2230309113102張立男計(jì)算機(jī)松園2250309113201王晨女通信梅園112第八頁(yè),共一百一十三頁(yè),2022年,8月28日(二)關(guān)系操作1、常用的關(guān)系操作查詢(xún)查找用戶所需要的數(shù)據(jù)數(shù)據(jù)更新插入、刪除、修改查詢(xún)的表達(dá)能力是其中最主要的部分2、關(guān)系操作的特點(diǎn)集合操作方式,即操作的對(duì)象和結(jié)果都是集合。非關(guān)系數(shù)據(jù)模型的數(shù)據(jù)操作方式:一次一記錄第二章關(guān)系模型和關(guān)系運(yùn)算第九頁(yè),共一百一十三頁(yè),2022年,8月28日
關(guān)系操作(續(xù))3、關(guān)系數(shù)據(jù)語(yǔ)言的種類(lèi)關(guān)系代數(shù)語(yǔ)言
用對(duì)關(guān)系的運(yùn)算來(lái)表達(dá)查詢(xún)要求典型代表:ISBL關(guān)系演算語(yǔ)言:用謂詞來(lái)表達(dá)查詢(xún)要求元組關(guān)系演算語(yǔ)言謂詞變?cè)幕緦?duì)象是元組變量典型代表:ALPHA域關(guān)系演算語(yǔ)言謂詞變?cè)幕緦?duì)象是域變量典型代表:QBE具有關(guān)系代數(shù)和關(guān)系演算雙重特點(diǎn)的語(yǔ)言典型代表:SQL第二章關(guān)系模型和關(guān)系運(yùn)算第十頁(yè),共一百一十三頁(yè),2022年,8月28日(三)關(guān)系的完整性約束實(shí)體完整性通常由關(guān)系系統(tǒng)自動(dòng)支持參照完整性早期系統(tǒng)不支持,目前大型系統(tǒng)能自動(dòng)支持用戶定義的完整性反映應(yīng)用領(lǐng)域需要遵循的約束條件,體現(xiàn)了具體領(lǐng)域中的語(yǔ)義約束用戶定義后由系統(tǒng)支持第二章關(guān)系模型和關(guān)系運(yùn)算第十一頁(yè),共一百一十三頁(yè),2022年,8月28日第二章關(guān)系模型和關(guān)系運(yùn)算2.1關(guān)系模型概述2.2關(guān)系數(shù)據(jù)結(jié)構(gòu)及完整性約束2.3關(guān)系代數(shù)第二章關(guān)系模型和關(guān)系運(yùn)算第十二頁(yè),共一百一十三頁(yè),2022年,8月28日第二節(jié)關(guān)系數(shù)據(jù)結(jié)構(gòu)及完整性約束關(guān)系模型建立在集合代數(shù)的基礎(chǔ)上。關(guān)系數(shù)據(jù)結(jié)構(gòu)的基本概念域笛卡兒積關(guān)系關(guān)鍵字主屬性非主屬性關(guān)系數(shù)據(jù)庫(kù)第二章關(guān)系模型和關(guān)系運(yùn)算第十三頁(yè),共一百一十三頁(yè),2022年,8月28日
一、概念1、域(Domain)域是一組具有相同數(shù)據(jù)類(lèi)型的值的集合。
例:整數(shù)實(shí)數(shù)介于某個(gè)取值范圍的整數(shù)指定長(zhǎng)度的字符串集合{‘男’,‘女’}介于某個(gè)取值范圍的日期第二章關(guān)系模型和關(guān)系運(yùn)算第十四頁(yè),共一百一十三頁(yè),2022年,8月28日2、笛卡爾積(CartesianProduct)給定一組域D1,D2,…,Dn,這些域可以是相同的。D1
D2,…,Dn的笛卡爾積為:
D1×D2×…×Dn={(d1,d2,…,dn)|diDi,i=1,2,…,n}元組(Tuple)笛卡爾積中每一個(gè)元素(d1,d2,…,dn)叫作一個(gè)n元組(n-tuple)或簡(jiǎn)稱(chēng)元組。分量(Component)笛卡爾積元素(d1,d2,…,dn)中的每一個(gè)值di叫作一個(gè)分量。基數(shù)(Cardinalnumber)若Di
為有限集,其基數(shù)為mi,則D1×D2×…×Dn的基數(shù)為:第二章關(guān)系模型和關(guān)系運(yùn)算第十五頁(yè),共一百一十三頁(yè),2022年,8月28日笛卡爾積(續(xù))例2.1:給出三個(gè)域:D1=SUPERVISOR={張清玫,劉逸}D2=SPECIALITY={計(jì)算機(jī)專(zhuān)業(yè),信息專(zhuān)業(yè)}D3=POSTGRADUATE={李勇,劉晨,王敏}則D1,D2,D3的笛卡爾積為:D1×D2×D3={(張清玫,計(jì)算機(jī)專(zhuān)業(yè),李勇),(張清玫,計(jì)算機(jī)專(zhuān)業(yè),劉晨),(張清玫,計(jì)算機(jī)專(zhuān)業(yè),王敏),(張清玫,信息專(zhuān)業(yè),李勇),(張清玫,信息專(zhuān)業(yè),劉晨),(張清玫,信息專(zhuān)業(yè),王敏),(劉逸,計(jì)算機(jī)專(zhuān)業(yè),李勇),(劉逸,計(jì)算機(jī)專(zhuān)業(yè),劉晨),(劉逸,計(jì)算機(jī)專(zhuān)業(yè),王敏),(劉逸,信息專(zhuān)業(yè),李勇),(劉逸,信息專(zhuān)業(yè),劉晨),(劉逸,信息專(zhuān)業(yè),王敏)}第二章關(guān)系模型和關(guān)系運(yùn)算第十六頁(yè),共一百一十三頁(yè),2022年,8月28日
笛卡爾積(續(xù))例2.2假設(shè)D1是學(xué)號(hào)集合,D2是課程集合,例如:D1={s2,s4,s7,s9},D2={管理學(xué),經(jīng)濟(jì)學(xué),運(yùn)籌學(xué)}則D1×D2={(s2,管理學(xué)),(s2,經(jīng)濟(jì)學(xué))(s2,運(yùn)籌學(xué)),(s4,管理學(xué)),(s4,經(jīng)濟(jì)學(xué)),(s4,運(yùn)籌學(xué)),(s7,管理學(xué)),(s7,經(jīng)濟(jì)學(xué)),(s7,運(yùn)籌學(xué)),(s9,管理學(xué)),(s9,經(jīng)濟(jì)學(xué)),(s9,運(yùn)籌學(xué))}笛卡爾積的表示方法笛卡爾積可表示為一個(gè)二維表。表中的每行對(duì)應(yīng)一個(gè)元組,表中的每列對(duì)應(yīng)一個(gè)域。第二章關(guān)系模型和關(guān)系運(yùn)算第十七頁(yè),共一百一十三頁(yè),2022年,8月28日
第二章關(guān)系模型和關(guān)系運(yùn)算第十八頁(yè),共一百一十三頁(yè),2022年,8月28日3.關(guān)系(Relation)笛卡兒積D1×D2×…×Dn的子集叫作在域D1,D2,…,Dn上的關(guān)系,表示為:
R(D1,D2,…,Dn)
R:關(guān)系名
n:關(guān)系的目或度(Degree)關(guān)系中的每個(gè)元素是關(guān)系中的元組,通常用t表示。單元關(guān)系與二元關(guān)系當(dāng)n=1時(shí),稱(chēng)該關(guān)系為單元關(guān)系(Unaryrelation)。當(dāng)n=2時(shí),稱(chēng)該關(guān)系為二元關(guān)系(Binaryrelation)。
第二章關(guān)系模型和關(guān)系運(yùn)算第十九頁(yè),共一百一十三頁(yè),2022年,8月28日例2.3在表2.1的笛卡爾積中取出有實(shí)際意義的元組來(lái)構(gòu)造關(guān)系。
關(guān)系:SAP(SUPERVISOR,SPECIALITY,POSTGRADUATE)假設(shè):專(zhuān)業(yè)與導(dǎo)師:1:n,導(dǎo)師與研究生:1:nSAP關(guān)系可以包含三個(gè)元組{(張清玫,計(jì)算機(jī)專(zhuān)業(yè),李勇),(張清玫,計(jì)算機(jī)專(zhuān)業(yè),劉晨),(劉逸,信息專(zhuān)業(yè),王敏)}
SupervisorSpecialitypostgraduate張清玫計(jì)算機(jī)專(zhuān)業(yè)李勇張清玫計(jì)算機(jī)專(zhuān)業(yè)劉晨劉逸信息專(zhuān)業(yè)王敏關(guān)系(續(xù))第二章關(guān)系模型和關(guān)系運(yùn)算第二十頁(yè),共一百一十三頁(yè),2022年,8月28日例2.4:
對(duì)例2.2取子集:R{(s2,管理學(xué)),(s4,經(jīng)濟(jì)學(xué)),(s7,經(jīng)濟(jì)學(xué)),(s9,運(yùn)籌學(xué))}取子集,并將D1、D2分別命名為學(xué)號(hào)和課程名稱(chēng)關(guān)系(續(xù))第二章關(guān)系模型和關(guān)系運(yùn)算第二十一頁(yè),共一百一十三頁(yè),2022年,8月28日關(guān)系可以有三種類(lèi)型:基本關(guān)系:實(shí)際存在的表,它是實(shí)際存儲(chǔ)數(shù)據(jù)的邏輯表示。查詢(xún)表:查詢(xún)結(jié)果對(duì)應(yīng)的表。視圖表:由基本表或其他視圖表導(dǎo)出的表,是虛表,不對(duì)應(yīng)實(shí)際存儲(chǔ)的數(shù)據(jù)。第二章關(guān)系模型和關(guān)系運(yùn)算
關(guān)系(續(xù))第二十二頁(yè),共一百一十三頁(yè),2022年,8月28日
關(guān)系(續(xù))基本關(guān)系具有以下六條性質(zhì)每一列中的分量是統(tǒng)一類(lèi)型的數(shù)據(jù),來(lái)自同一個(gè)域不同列可以出自同一個(gè)域,不同屬性要給予不同的屬性名。列的次序可以任意交換。關(guān)系中不允許出現(xiàn)重復(fù)元組。關(guān)系中行的次序可以任意交換。每一個(gè)分量都必須是不可分的數(shù)據(jù)項(xiàng)。SupervisorSpecialitypostgraduatePG1PG2張清玫計(jì)算機(jī)專(zhuān)業(yè)李勇劉晨劉逸信息專(zhuān)業(yè)王敏第二章關(guān)系模型和關(guān)系運(yùn)算D1=PERSON={張清玫,劉逸,李勇,劉晨,王敏}D2=SPECIALITY={計(jì)算機(jī)專(zhuān)業(yè),信息專(zhuān)業(yè)}定義導(dǎo)師屬性名為SUPERVISOR-PERSON定義研究生屬性名為POSTGRADUATE-PERSON第二十三頁(yè),共一百一十三頁(yè),2022年,8月28日4、屬性
關(guān)系中不同列可以對(duì)應(yīng)相同的域,為了加以區(qū)分,必須對(duì)每列起一個(gè)名字,稱(chēng)為屬性(Attribute)。n目關(guān)系必有n個(gè)屬性。關(guān)系中屬性個(gè)數(shù)稱(chēng)為“元數(shù)”,元組個(gè)數(shù)稱(chēng)為“基數(shù)”。
第二章關(guān)系模型和關(guān)系運(yùn)算第二十四頁(yè),共一百一十三頁(yè),2022年,8月28日
5、關(guān)鍵字
(1)候選鍵若關(guān)系中的某一最小屬性組的值能唯一地標(biāo)識(shí)一個(gè)元組,則稱(chēng)該屬性組稱(chēng)為候選鍵(Candidatekey)。在最簡(jiǎn)單的情況下,候選鍵只包含一個(gè)屬性。在最極端的情況下,關(guān)系的所有屬性組是這個(gè)關(guān)系模式的候選鍵,稱(chēng)為全碼(All-key)。(2)主鍵若一個(gè)關(guān)系有多個(gè)候選鍵,則選定其中一個(gè)為主鍵(Primarykey)。主鍵中的各屬性稱(chēng)為主屬性(Primeattribute)。不包含在任何侯選鍵中的屬性稱(chēng)為非主屬性(Non-keyattribute)。第二章關(guān)系模型和關(guān)系運(yùn)算第二十五頁(yè),共一百一十三頁(yè),2022年,8月28日
關(guān)系小結(jié)關(guān)系舉例:第二章關(guān)系模型和關(guān)系運(yùn)算第二十六頁(yè),共一百一十三頁(yè),2022年,8月28日(3)外鍵如果關(guān)系R2的一個(gè)或一組屬性X不是R2的主鍵,而是另一關(guān)系R1的主鍵,則該屬性或?qū)傩越MX稱(chēng)為關(guān)系R2的外部關(guān)系鍵或外碼。并稱(chēng)關(guān)系R2為參照關(guān)系(ReferencingRelation),關(guān)系R1為被參照關(guān)系(ReferencedRelation)。
關(guān)鍵字(續(xù))
第二章關(guān)系模型和關(guān)系運(yùn)算第二十七頁(yè),共一百一十三頁(yè),2022年,8月28日例2.5產(chǎn)品關(guān)系Products(ProductID,ProductName,UnitPrice,SupplierID,UnitsInstock)供應(yīng)商關(guān)系Suppliers(SupplierID,CompanyName,Address)SupplierID是Suppliers關(guān)系的主鍵,但它不是Products關(guān)系的主鍵(是其中一個(gè)屬性),所以SupplierID是Products關(guān)系的外部關(guān)系鍵。Suppliers為被參照關(guān)系,Products關(guān)系為參照關(guān)系。由外部關(guān)系鍵的定義可知,被參照關(guān)系的主鍵和參照關(guān)系的外鍵必須定義在同一個(gè)域上。
外鍵(續(xù))
第二章關(guān)系模型和關(guān)系運(yùn)算第二十八頁(yè),共一百一十三頁(yè),2022年,8月28日
外鍵(續(xù))
例2.6第二章關(guān)系模型和關(guān)系運(yùn)算第二十九頁(yè),共一百一十三頁(yè),2022年,8月28日6、關(guān)系數(shù)據(jù)庫(kù)在一個(gè)給定的應(yīng)用領(lǐng)域中,所有實(shí)體及實(shí)體之間的聯(lián)系的關(guān)系的集合構(gòu)成一個(gè)關(guān)系數(shù)據(jù)庫(kù)。第二章關(guān)系模型和關(guān)系運(yùn)算第三十頁(yè),共一百一十三頁(yè),2022年,8月28日
二、
關(guān)系模型的三級(jí)體系結(jié)構(gòu)關(guān)系模式(模式)子模式(外模式)存儲(chǔ)模式(內(nèi)模式)第二章關(guān)系模型和關(guān)系運(yùn)算應(yīng)用A
數(shù)據(jù)庫(kù)應(yīng)用B應(yīng)用C應(yīng)用D應(yīng)用E外模式1外模式2外模式3模式內(nèi)模式模式:數(shù)據(jù)庫(kù)中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。內(nèi)模式:是數(shù)據(jù)物理結(jié)構(gòu)和存儲(chǔ)方式的描述。外模式:是用戶能夠看見(jiàn)和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。第三十一頁(yè),共一百一十三頁(yè),2022年,8月28日
(一)關(guān)系模式關(guān)系模式(RelationSchema)是對(duì)關(guān)系的描述,主要包括:元組集合的結(jié)構(gòu)屬性構(gòu)成屬性來(lái)自的域?qū)傩耘c域之間的映象關(guān)系元組語(yǔ)義笛卡爾積中符合元組語(yǔ)義的部分元素的全體構(gòu)成該關(guān)系模式的關(guān)系完整性約束條件屬性取值范圍的限定屬性間的相互關(guān)聯(lián)第二章關(guān)系模型和關(guān)系運(yùn)算第三十二頁(yè),共一百一十三頁(yè),2022年,8月28日1、定義關(guān)系模式關(guān)系的描述稱(chēng)為關(guān)系模式。它可以形式化地表示為:
R(U,D,DOM,F)R關(guān)系名U
組成該關(guān)系的屬性名集合D
屬性組U中屬性所來(lái)自的域DOM
屬性向域的映象集合F
屬性間的數(shù)據(jù)依賴(lài)關(guān)系集合第二章關(guān)系模型和關(guān)系運(yùn)算第三十三頁(yè),共一百一十三頁(yè),2022年,8月28日
定義關(guān)系模式(續(xù))例2.7
在上面例子中,由于導(dǎo)師和研究生出自同一個(gè)域——人,所以要取不同的屬性名,并在模式中定義屬性向域的映象,即說(shuō)明它們分別出自哪個(gè)域,如:
DOM(SUPERVISOR-PERSON)=DOM(POSTGRADUATE-PERSON)=PERSON第二章關(guān)系模型和關(guān)系運(yùn)算第三十四頁(yè),共一百一十三頁(yè),2022年,8月28日
定義關(guān)系模式(續(xù))關(guān)系模式通??梢院?jiǎn)記為
R(U)
或R(A1,A2,…,An)R關(guān)系名A1,A2,…,An屬性名注:域名及屬性向域的映象常常直接說(shuō)明為屬性的類(lèi)型、長(zhǎng)度。第二章關(guān)系模型和關(guān)系運(yùn)算第三十五頁(yè),共一百一十三頁(yè),2022年,8月28日2、關(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)系數(shù)據(jù)庫(kù)中,關(guān)系模式是型(二維表的表框架或結(jié)構(gòu)),關(guān)系是值。在實(shí)際中,通常把關(guān)系模式和關(guān)系統(tǒng)稱(chēng)為關(guān)系。第二章關(guān)系模型和關(guān)系運(yùn)算第三十六頁(yè),共一百一十三頁(yè),2022年,8月28日(二)子模式子模式是用戶所用到的那部分?jǐn)?shù)據(jù)的描述,以及數(shù)據(jù)與關(guān)系模式中相應(yīng)數(shù)據(jù)的聯(lián)系。OrderIDProductIDProductNameQuantity1110248Queso80OrderIDProductIDQuantity111024880客戶訂單子模式D(OrderID,ProductID,ProductName,Quantity)
ProductIDProductNameUnitPriceSupplierID10248Queso215DProductOrderDetail第二章關(guān)系模型和關(guān)系運(yùn)算第三十七頁(yè),共一百一十三頁(yè),2022年,8月28日(三)存儲(chǔ)模式存儲(chǔ)模式是數(shù)據(jù)物理結(jié)構(gòu)和存儲(chǔ)方式的描述。存儲(chǔ)的方法堆存儲(chǔ)索引存儲(chǔ)聚簇存儲(chǔ)第二章關(guān)系模型和關(guān)系運(yùn)算第三十八頁(yè),共一百一十三頁(yè),2022年,8月28日(四)關(guān)系模型三級(jí)模式體系舉例以學(xué)生信息管理數(shù)據(jù)庫(kù)為例:1、關(guān)系模式學(xué)生(學(xué)號(hào),姓名,性別,出生日期,專(zhuān)業(yè),家庭住址,聯(lián)系電話)專(zhuān)業(yè)(專(zhuān)業(yè)號(hào),專(zhuān)業(yè)名稱(chēng),所在院系)課程(課程號(hào),課程名稱(chēng),學(xué)時(shí),學(xué)分,學(xué)期)教師(教師號(hào),姓名,性別,所在院系,聯(lián)系電話)選課(學(xué)期,課程號(hào),學(xué)號(hào),成績(jī))課程安排表(課程號(hào),教師號(hào),上課時(shí)間)第二章關(guān)系模型和關(guān)系運(yùn)算第三十九頁(yè),共一百一十三頁(yè),2022年,8月28日關(guān)系模式的三級(jí)體系結(jié)構(gòu)(續(xù))SQLServer2005數(shù)據(jù)庫(kù)中表的設(shè)計(jì)第二章關(guān)系模型和關(guān)系運(yùn)算第四十頁(yè),共一百一十三頁(yè),2022年,8月28日2、外模式關(guān)系模式的三級(jí)體系結(jié)構(gòu)(續(xù))第二章關(guān)系模型和關(guān)系運(yùn)算第四十一頁(yè),共一百一十三頁(yè),2022年,8月28日3、存儲(chǔ)模式在C:\ProgramFiles\MicrosoftSQLServer\MSSQL.2\MSSQL\Data目錄下存放student數(shù)據(jù)庫(kù)的數(shù)據(jù)文件和日志文件。關(guān)系模式的三級(jí)體系結(jié)構(gòu)(續(xù))第二章關(guān)系模型和關(guān)系運(yùn)算第四十二頁(yè),共一百一十三頁(yè),2022年,8月28日
三、關(guān)系模型的完整性規(guī)則關(guān)系模型的完整性規(guī)則是對(duì)關(guān)系的某種約束條件。關(guān)系模型中三類(lèi)完整性約束:實(shí)體完整性參照完整性用戶定義的完整性實(shí)體完整性和參照完整性是關(guān)系模型必須滿足的完整性約束條件,被稱(chēng)作是關(guān)系的兩個(gè)不變性,應(yīng)該由關(guān)系系統(tǒng)自動(dòng)支持。第二章關(guān)系模型和關(guān)系運(yùn)算第四十三頁(yè),共一百一十三頁(yè),2022年,8月28日
(一)實(shí)體完整性1、實(shí)體完整性規(guī)則(EntityIntegrity)定義
若屬性A是基本關(guān)系R的主屬性,則屬性A不能取空值。例2.8:SAP(SUPERVISOR,SPECIALITY,POSTGRADUATE)POSTGRADUATE屬性為主碼(假設(shè)研究生不會(huì)重名),則其不能取空值。第二章關(guān)系模型和關(guān)系運(yùn)算第四十四頁(yè),共一百一十三頁(yè),2022年,8月28日
實(shí)體完整性示例說(shuō)明Teacher關(guān)系第二章關(guān)系模型和關(guān)系運(yùn)算第四十五頁(yè),共一百一十三頁(yè),2022年,8月28日保存時(shí)提示錯(cuò)誤信息第二章關(guān)系模型和關(guān)系運(yùn)算第四十六頁(yè),共一百一十三頁(yè),2022年,8月28日
實(shí)體完整性(續(xù))
2、關(guān)系模型必須遵守實(shí)體完整性規(guī)則的原因?qū)嶓w完整性規(guī)則是針對(duì)基本關(guān)系而言的。一個(gè)基本表通常對(duì)應(yīng)現(xiàn)實(shí)世界的一個(gè)實(shí)體集?,F(xiàn)實(shí)世界中的實(shí)體都是可區(qū)分的,即它們具有某種唯一性標(biāo)識(shí)。相應(yīng)地,關(guān)系模型中以主碼作為唯一性標(biāo)識(shí)。主碼中的屬性即主屬性不能取空值。所謂空值就是“不知道”或“無(wú)意義”的值。如果主屬性取空值,就說(shuō)明存在某個(gè)不可標(biāo)識(shí)的實(shí)體,即存在不可區(qū)分的實(shí)體,這與第(2)點(diǎn)相矛盾,因此這個(gè)規(guī)則稱(chēng)為實(shí)體完整性。第二章關(guān)系模型和關(guān)系運(yùn)算第四十七頁(yè),共一百一十三頁(yè),2022年,8月28日實(shí)體完整性(續(xù))3、注意實(shí)體完整性規(guī)則規(guī)定基本關(guān)系的所有主屬性都不能取空值。例2.9:
學(xué)生選課關(guān)系:選修(學(xué)號(hào),課程號(hào),成績(jī))“學(xué)號(hào)、課程號(hào)”為主碼,則“學(xué)號(hào)”和“課程號(hào)”兩個(gè)屬性都不能取空值。
第二章關(guān)系模型和關(guān)系運(yùn)算第四十八頁(yè),共一百一十三頁(yè),2022年,8月28日
(二)參照完整性1、關(guān)系間的引用在關(guān)系模型中實(shí)體及實(shí)體間的聯(lián)系都是用關(guān)系來(lái)描述的,因此可能存在著關(guān)系與關(guān)系間的引用。例2.10學(xué)生實(shí)體、專(zhuān)業(yè)實(shí)體以及專(zhuān)業(yè)與學(xué)生間的一對(duì)多聯(lián)系學(xué)生(學(xué)號(hào),姓名,性別,專(zhuān)業(yè)號(hào),年齡)專(zhuān)業(yè)(專(zhuān)業(yè)號(hào),專(zhuān)業(yè)名)第二章關(guān)系模型和關(guān)系運(yùn)算第四十九頁(yè),共一百一十三頁(yè),2022年,8月28日關(guān)系間的引用(續(xù))學(xué)生專(zhuān)業(yè)第二章關(guān)系模型和關(guān)系運(yùn)算第五十頁(yè),共一百一十三頁(yè),2022年,8月28日關(guān)系間的引用(續(xù))例2.11學(xué)生、課程、學(xué)生與課程之間的多對(duì)多聯(lián)系。學(xué)生(學(xué)號(hào),姓名,性別,專(zhuān)業(yè)號(hào),年齡)課程(課程號(hào),課程名,學(xué)分)選修(學(xué)號(hào),課程號(hào),成績(jī))第二章關(guān)系模型和關(guān)系運(yùn)算第五十一頁(yè),共一百一十三頁(yè),2022年,8月28日
學(xué)生學(xué)生選課課程第二章關(guān)系模型和關(guān)系運(yùn)算關(guān)系間的引用(續(xù))第五十二頁(yè),共一百一十三頁(yè),2022年,8月28日關(guān)系間的引用(續(xù))例2.12學(xué)生實(shí)體及其內(nèi)部的領(lǐng)導(dǎo)聯(lián)系(一對(duì)多)
學(xué)生(學(xué)號(hào),姓名,性別,專(zhuān)業(yè)號(hào),年齡,班長(zhǎng))第二章關(guān)系模型和關(guān)系運(yùn)算第五十三頁(yè),共一百一十三頁(yè),2022年,8月28日關(guān)系間的引用(小結(jié))第二章關(guān)系模型和關(guān)系運(yùn)算參照關(guān)系被參照關(guān)系學(xué)生關(guān)系專(zhuān)業(yè)關(guān)系專(zhuān)業(yè)號(hào)學(xué)生關(guān)系選修關(guān)系課程關(guān)系學(xué)號(hào)課程號(hào)學(xué)生關(guān)系學(xué)號(hào)第五十四頁(yè),共一百一十三頁(yè),2022年,8月28日參照完整性(續(xù))參照完整性規(guī)則就是定義外鍵與主鍵之間的引用規(guī)則。2、參照完整性規(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è)元組的主碼值第二章關(guān)系模型和關(guān)系運(yùn)算第五十五頁(yè),共一百一十三頁(yè),2022年,8月28日
參照完整性(續(xù))說(shuō)明關(guān)系R和S不一定是不同的關(guān)系。外鍵并不一定要與相應(yīng)的主鍵同名。當(dāng)外鍵與相應(yīng)的主碼屬于不同關(guān)系時(shí),往往取相同的名字,以便于識(shí)別。目標(biāo)關(guān)系S的主鍵Ks和參照關(guān)系的外鍵F必須定義在同一個(gè)(或一組)域上。第二章關(guān)系模型和關(guān)系運(yùn)算第五十六頁(yè),共一百一十三頁(yè),2022年,8月28日
參照完整性(續(xù))例2.10中,學(xué)生關(guān)系中的“專(zhuān)業(yè)號(hào)”是專(zhuān)業(yè)關(guān)系的主碼,但不是學(xué)生關(guān)系的碼,因此,“專(zhuān)業(yè)號(hào)”是學(xué)生關(guān)系的外碼。學(xué)生關(guān)系中每個(gè)元組的“專(zhuān)業(yè)號(hào)”屬性只能取下面兩類(lèi)值:空值,表示尚未給該學(xué)生分配專(zhuān)業(yè);非空值,這時(shí)該值必須是專(zhuān)業(yè)關(guān)系中某個(gè)元組的“專(zhuān)業(yè)號(hào)”值,表示該學(xué)生不可能分配到一個(gè)不存在的專(zhuān)業(yè)中。第二章關(guān)系模型和關(guān)系運(yùn)算第五十七頁(yè),共一百一十三頁(yè),2022年,8月28日
參照完整性規(guī)則(續(xù))例2.11中,選修關(guān)系中的“學(xué)號(hào)”是學(xué)生關(guān)系的主碼,選修關(guān)系中的“課程號(hào)”是課程關(guān)系的主碼,但它們每個(gè)都不是選修關(guān)系的碼;因此,“學(xué)號(hào)”和“課程號(hào)”都是選修關(guān)系的外碼。
由于“學(xué)號(hào)”和“課程號(hào)”是選修關(guān)系中的主屬性,按照實(shí)體完整性和參照完整性規(guī)則,它們只能取相應(yīng)被參照關(guān)系中已經(jīng)存在的主碼值。第二章關(guān)系模型和關(guān)系運(yùn)算第五十八頁(yè),共一百一十三頁(yè),2022年,8月28日
參照完整性規(guī)則(續(xù))例2.12中,“班長(zhǎng)”不是學(xué)生關(guān)系的碼,但對(duì)應(yīng)于學(xué)生關(guān)系的碼“學(xué)號(hào)”,從而是學(xué)生關(guān)系的外碼?!鞍嚅L(zhǎng)”屬性值可以取兩類(lèi)值:空值,表示該學(xué)生所在班級(jí)尚未選出班長(zhǎng),或該學(xué)生本人即是班長(zhǎng);非空值,這時(shí)該值必須是本關(guān)系中某個(gè)元組的學(xué)號(hào)值。第二章關(guān)系模型和關(guān)系運(yùn)算第五十九頁(yè),共一百一十三頁(yè),2022年,8月28日
參照完整性(續(xù))例2.13在產(chǎn)品關(guān)系中有下列兩個(gè)關(guān)系模式:產(chǎn)品關(guān)系Products(ProductID,ProductName,UnitPrice,SupplierID,UnitsInstock)
訂單明細(xì)關(guān)系:OrdersDetails(OrderID,ProductID,UnitPrice,Quantity)問(wèn)題:(1)兩個(gè)關(guān)系的主鍵是什么?(2)訂單明細(xì)關(guān)系的外鍵是什么?其值能否為空?第二章關(guān)系模型和關(guān)系運(yùn)算第六十頁(yè),共一百一十三頁(yè),2022年,8月28日例2.14設(shè)課程之間有先修、后續(xù)聯(lián)系。關(guān)系模式如下:R(CourseID,Cname,PCourseID)問(wèn)題:如果規(guī)定:每門(mén)課的直接先修課至多只有一門(mén),那么關(guān)系R的主鍵是什么,外鍵是什么?外鍵能否為空?第二章關(guān)系模型和關(guān)系運(yùn)算
參照完整性(續(xù))第六十一頁(yè),共一百一十三頁(yè),2022年,8月28日如:第二章關(guān)系模型和關(guān)系運(yùn)算
參照完整性(續(xù))CourseIDCNamePCourseIDC01數(shù)據(jù)庫(kù)系統(tǒng)原理C03C02數(shù)據(jù)庫(kù)高級(jí)應(yīng)用C01
C03數(shù)據(jù)結(jié)構(gòu)C04信息系統(tǒng)開(kāi)發(fā)C02第六十二頁(yè),共一百一十三頁(yè),2022年,8月28日
參照完整性示例說(shuō)明學(xué)院關(guān)系建立學(xué)院關(guān)系和teacher關(guān)系的參照關(guān)系第二章關(guān)系模型和關(guān)系運(yùn)算第六十三頁(yè),共一百一十三頁(yè),2022年,8月28日
參照完整性示例說(shuō)明插入新的記錄(所在學(xué)院屬性值為4)結(jié)果第二章關(guān)系模型和關(guān)系運(yùn)算第六十四頁(yè),共一百一十三頁(yè),2022年,8月28日
(三)用戶定義的完整性用戶定義的完整性是針對(duì)某一具體關(guān)系數(shù)據(jù)庫(kù)的約束條件,反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語(yǔ)義要求。關(guān)系模型應(yīng)提供定義和檢驗(yàn)這類(lèi)完整性的機(jī)制,以便用統(tǒng)一的系統(tǒng)的方法處理它們,而不需要由應(yīng)用程序承擔(dān)這一功能。第二章關(guān)系模型和關(guān)系運(yùn)算第六十五頁(yè),共一百一十三頁(yè),2022年,8月28日
用戶定義的完整性(續(xù))例2.15:
課程(課程號(hào),課程名,學(xué)分)“課程號(hào)”屬性必須取唯一值非主屬性“課程名”也不能取空值“學(xué)分”屬性只能取值{1,2,3,4}第二章關(guān)系模型和關(guān)系運(yùn)算第六十六頁(yè),共一百一十三頁(yè),2022年,8月28日第二章關(guān)系模型和關(guān)系運(yùn)算2.1關(guān)系模型概述2.2關(guān)系數(shù)據(jù)結(jié)構(gòu)及完整性約束2.3關(guān)系代數(shù)第二章關(guān)系模型和關(guān)系運(yùn)算第六十七頁(yè),共一百一十三頁(yè),2022年,8月28日
第三節(jié)關(guān)系代數(shù)關(guān)系代數(shù)以一個(gè)或兩個(gè)關(guān)系為輸入,產(chǎn)生一個(gè)新的關(guān)系作為結(jié)果。關(guān)系代數(shù)運(yùn)算的主要類(lèi)型包括:傳統(tǒng)的集合運(yùn)算專(zhuān)門(mén)的關(guān)系運(yùn)算
第二章關(guān)系模型和關(guān)系運(yùn)算第六十八頁(yè),共一百一十三頁(yè),2022年,8月28日關(guān)系代數(shù)(續(xù))關(guān)系運(yùn)算符運(yùn)算符含義運(yùn)算符含義
集合運(yùn)算符∪﹣∩×并差交笛卡爾積
比較運(yùn)算符>≥<≤=≠大于大于等于小于小于等于等于不等于
專(zhuān)門(mén)的關(guān)系運(yùn)算符
選擇投影連接除
邏輯運(yùn)算符非與或第二章關(guān)系模型和關(guān)系運(yùn)算第六十九頁(yè),共一百一十三頁(yè),2022年,8月28日關(guān)系運(yùn)算類(lèi)型傳統(tǒng)的關(guān)系運(yùn)算(集合運(yùn)算):并、差、交、(廣義)笛卡爾積專(zhuān)門(mén)的關(guān)系運(yùn)算:選擇、投影、連接、除五種基本的關(guān)系運(yùn)算:并、差、笛卡爾積、投影、選擇。其他運(yùn)算都可以用五種基本運(yùn)算表示。第二章關(guān)系模型和關(guān)系運(yùn)算關(guān)系代數(shù)(續(xù))第七十頁(yè),共一百一十三頁(yè),2022年,8月28日
1、分量
設(shè)R(A1,A2,…,An)是關(guān)系模式,R是它的關(guān)系。tR表示t是R的一個(gè)元組。t[Ai]表示元組t在屬性Ai上的一個(gè)分量。2、連接
設(shè)R是n目關(guān)系,S是m目關(guān)系。trR,tsS,trts稱(chēng)為元組tr和ts的連接或串接,它是一個(gè)n+m列的元組,前n個(gè)分量為tr,后m個(gè)分量為ts
。第二章關(guān)系模型和關(guān)系運(yùn)算︵
一、若干記號(hào)第七十一頁(yè),共一百一十三頁(yè),2022年,8月28日若干記號(hào)(續(xù))3、象集
給定一個(gè)關(guān)系R(X,Z),X和Z為屬性組。當(dāng)t[X]=x時(shí),定義x在R中的象集為
Zx={t[Z]|tR,t[X]=x}
它表示R中屬性組X的值為x的諸元組在Z上的分量的集合。第二章關(guān)系模型和關(guān)系運(yùn)算第七十二頁(yè),共一百一十三頁(yè),2022年,8月28日
象集舉例例如下圖中,x1在R中的象集Zx1={Z1,Z2,Z3},
x2在R中的象集Zx2={Z2,Z3},
x3在R中的象集Zx3={Z1,Z3}Rx1
Z1x1Z2x1Z3x2Z2x2Z3x3Z1x3Z3第二章關(guān)系模型和關(guān)系運(yùn)算第七十三頁(yè),共一百一十三頁(yè),2022年,8月28日二、傳統(tǒng)的集合運(yùn)算傳統(tǒng)的集合運(yùn)算都是二元運(yùn)算。并、差、交要求兩個(gè)運(yùn)算對(duì)象具有相同的目n(即兩個(gè)關(guān)系都有n個(gè)屬性),
且相應(yīng)的屬性取自同一個(gè)域,t是元組變量,t∈R表示t是R的一個(gè)元組。1、并(Union)設(shè)R和S都是n目關(guān)系,R和S的并是由屬于R或?qū)儆赟的元組組成,即
R∪S={t|tRtS}第二章關(guān)系模型和關(guān)系運(yùn)算第七十四頁(yè),共一百一十三頁(yè),2022年,8月28日
傳統(tǒng)的集合運(yùn)算(續(xù))2、差(Difference)設(shè)R和S都是n目關(guān)系,R和S的差由屬于R而不屬于S的元組組成,即
R-S={t|tRtS}3、交(Intersection)設(shè)R和S都是n目關(guān)系,R和S的交由既屬于R,又屬于S的元組組成,即
R∩S={t|tRtS}第二章關(guān)系模型和關(guān)系運(yùn)算第七十五頁(yè),共一百一十三頁(yè),2022年,8月28日
傳統(tǒng)的集合運(yùn)算(續(xù))4、廣義笛卡爾積(ExtendedCartesianProduct)設(shè)R和S分別為n目和m目關(guān)系,R和S的廣義笛卡爾積是一個(gè)(n+m)目關(guān)系,其每個(gè)元組的前n個(gè)分量是關(guān)系R的一個(gè)元組,后m個(gè)分量是關(guān)系S的一個(gè)元組。 RS={trts|trRtsS}
若R和S分別有k1和k2個(gè)元組,則R和S的廣義笛卡爾積有(k1*k2)個(gè)元組。第二章關(guān)系模型和關(guān)系運(yùn)算︵第七十六頁(yè),共一百一十三頁(yè),2022年,8月28日
傳統(tǒng)的集合運(yùn)算的例子
ABCa1a1a2b1b2b2c1c2c1ABCa1a1a2b2b3b2c2c2c1ABCa1a1a2a1b1b2b2b3c1c2c1c2RSABCa1a2b2b2c2c1ABCa1b1c1R∪SR∩
SR-S第二章關(guān)系模型和關(guān)系運(yùn)算第七十七頁(yè),共一百一十三頁(yè),2022年,8月28日傳統(tǒng)的集合運(yùn)算的例子(續(xù))
R.AR.BR.CS.AS.BS.Ca1a1a1a1a1a1a2a2a2b1b1b1b2b2b2b2b2b2c1c1c1c2c2c2c1c1c1a1a1a2a1a1a2a1a1a2b2b3b2b2b3b2b2b3b2c2c2c1c2c2c1c2c2c1RS第二章關(guān)系模型和關(guān)系運(yùn)算第七十八頁(yè),共一百一十三頁(yè),2022年,8月28日三、專(zhuān)門(mén)的關(guān)系運(yùn)算1、選擇(Selection)
由關(guān)系R中選擇滿足條件F的元組,記作F(R)
F(R)={t|tRF(t)=‘真’}其中,F是邏輯表達(dá)式,F(xiàn)中的運(yùn)算對(duì)象為屬性名(或?qū)傩孕蛱?hào))、常量、函數(shù),運(yùn)算符可以為邏輯運(yùn)算符、、,比較運(yùn)算符、、=、、、。F(R)表示從R中選擇滿足公式F的元組所構(gòu)成的關(guān)系。選擇又稱(chēng)限制(restriction),是一元運(yùn)算。從行的角度進(jìn)行運(yùn)算。第二章關(guān)系模型和關(guān)系運(yùn)算第七十九頁(yè),共一百一十三頁(yè),2022年,8月28日一個(gè)示例數(shù)據(jù)庫(kù)
學(xué)號(hào)Sno姓名Sname性別Ssex年齡Sage所在系Sdept95001950029500395004李勇劉晨王敏張立男女女男20191819CSISMAISStudent課程號(hào)Cno課程名Cname先行課Cpno學(xué)分Ccredit1234567數(shù)據(jù)庫(kù)數(shù)學(xué)信息系統(tǒng)操作系統(tǒng)數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)處理PASCAL語(yǔ)言516764243424Course學(xué)號(hào)Sno課程號(hào)Cno成績(jī)Grade9500195001950019500295002123239285889080SC第二章關(guān)系模型和關(guān)系運(yùn)算第八十頁(yè),共一百一十三頁(yè),2022年,8月28日
選擇查詢(xún)的例子例2.16查詢(xún)信息系(IS系)的全體學(xué)生
Sdept=‘IS’(Student)或5=‘IS’(Student)SnoSnameSsexSageSdept9500295004劉晨張立女男1919ISIS結(jié)果如下:
第二章關(guān)系模型和關(guān)系運(yùn)算第八十一頁(yè),共一百一十三頁(yè),2022年,8月28日選擇查詢(xún)的例子
Sage<20(Student)或4<20(Student)SnoSnameSsexSageSdept950029500395004劉晨王敏張立女女男191819ISMAIS例2.17查詢(xún)年齡小于20的學(xué)生。結(jié)果如下:
第二章關(guān)系模型和關(guān)系運(yùn)算第八十二頁(yè),共一百一十三頁(yè),2022年,8月28日例2.18查詢(xún)年齡小于20歲的信息系的女同學(xué)。第二章關(guān)系模型和關(guān)系運(yùn)算選擇查詢(xún)的例子
Sage<20∧Ssex=‘女’∧Sdept=‘IS’(Student)SnoSnameSsexSageSdept95002劉晨女19IS第八十三頁(yè),共一百一十三頁(yè),2022年,8月28日
專(zhuān)門(mén)的關(guān)系運(yùn)算(續(xù))2、投影(projection)關(guān)系R在屬性列A上的投影是從R中選擇屬性列A組成新關(guān)系,記作A(R)
A(R)={t[A]|tR}
其中,A是屬性名(號(hào))的列表。投影是一元運(yùn)算,從列的角度進(jìn)行運(yùn)算。由于去掉了原關(guān)系中的一些列,可能導(dǎo)致不相同的元組投影后相同,因此需要?jiǎng)h除結(jié)果中的重復(fù)元組。第二章關(guān)系模型和關(guān)系運(yùn)算第八十四頁(yè),共一百一十三頁(yè),2022年,8月28日
投影查詢(xún)的例子例2.19查詢(xún)學(xué)生的姓名和所在的系。
Sname,Sdept(Student)
或2,5(Student)
查詢(xún)的結(jié)果如下:SnameSdept李勇劉晨王敏張立CSISMAIS第二章關(guān)系模型和關(guān)系運(yùn)算第八十五頁(yè),共一百一十三頁(yè),2022年,8月28日
投影查詢(xún)的例子(續(xù))Sdept(Student)
或5(Student)
查詢(xún)的結(jié)果如下:SdeptCSISMA例2.20查詢(xún)關(guān)系Student中包含的系。第二章關(guān)系模型和關(guān)系運(yùn)算第八十六頁(yè),共一百一十三頁(yè),2022年,8月28日
專(zhuān)門(mén)的關(guān)系運(yùn)算(續(xù))3、連接(Join)
是從兩個(gè)關(guān)系的笛卡爾積中選擇屬性間滿足一定條件的元組,記作:
其中A和B分別為R和S上度數(shù)相等且可比的屬性組。是比較運(yùn)算符(、、、、、)。連接運(yùn)算從R和S的笛卡爾積R×S中選取R關(guān)系在A屬性組上的值與S關(guān)系在B屬性組上滿足比較關(guān)系的元組。
︵第二章關(guān)系模型和關(guān)系運(yùn)算第八十七頁(yè),共一百一十三頁(yè),2022年,8月28日連接(續(xù))連接運(yùn)算的類(lèi)型:等值連接(Equijoin):為等號(hào)的連接運(yùn)算。自然連接(Naturaljoin):
是一種特殊的等值連接。它要求兩個(gè)關(guān)系中進(jìn)行比較的分量必須是相同的屬性組,并且在結(jié)果中去掉重復(fù)屬性。設(shè)屬性組B是關(guān)系R和S的相同屬性。R和S在B上的自然連接記作:第二章關(guān)系模型和關(guān)系運(yùn)算︵︵第八十八頁(yè),共一百一十三頁(yè),2022年,8月28日
連接運(yùn)算舉例例2.21求關(guān)系R、S的一般連接、等值連接、自然連接。ABCa1a1a2a2b1b2b3b456812BEb1b2b3b3b5371022AR.BCS.BEa1a1a1a1a2b1b1b2b2b355668b2b3b2b3b371071010RS第二章關(guān)系模型和關(guān)系運(yùn)算RSC<E第八十九頁(yè),共一百一十三頁(yè),2022年,8月28日
連接運(yùn)算舉例(續(xù))
AR.BCS.BEa1a1a2a2b1b2b3
b35688b1b2b3
b337102ABCEa1a1a2a2b1b2b3
b3568837102等值連接RS自然連接RS第二章關(guān)系模型和關(guān)系運(yùn)算R.B=S.B第九十頁(yè),共一百一十三頁(yè),2022年,8月28日例2.22已知關(guān)系R和關(guān)系S,求、和。第二章關(guān)系模型和關(guān)系運(yùn)算
連接運(yùn)算舉例(續(xù))RSB<DRSR.A=S.CRSABC327465247733CD3236RSRSB<DABR.CS.CD27745224733323226366第九十一頁(yè),共一百一十三頁(yè),2022年,8月28日第二章關(guān)系模型和關(guān)系運(yùn)算RSR.A=S.CRS
連接運(yùn)算舉例(續(xù))ABR.CS.CD3265773236ABCD74243333一般連接:在兩個(gè)關(guān)系的笛卡爾積中選取屬性間的分量滿足一定條件的元組。
等值連接:在兩個(gè)關(guān)系的笛卡爾積中選取屬性間分量值相等的元組。
自然連接:兩個(gè)關(guān)系中進(jìn)行比較的分量必須是相同的屬性組,在結(jié)果中把重復(fù)的屬性列去掉。第九十二頁(yè),共一百一十三頁(yè),2022年,8月28日
專(zhuān)門(mén)的關(guān)系運(yùn)算(續(xù))4、除(Division)
給定關(guān)系R(X,Y)和S(Y,Z),其中X,Y,Z為屬性組。R中的Y與S中的Y可以有不同的屬性名,但必須在相同的域上取值。R與S的商(除運(yùn)算的結(jié)果),記作RS是一個(gè)新關(guān)系P(X),P是R中滿足下列條件的元組在X屬性列上的投影:元組在X上分量值x的象集Yx包含S在Y上投影的集合。
RS={tr[X]|trR
Yx}第二章關(guān)系模型和關(guān)系運(yùn)算第九十三頁(yè),共一百一十三頁(yè),2022年,8月28日(1)除運(yùn)算的步驟①計(jì)算S在屬性組Y上的投影。②計(jì)算關(guān)系R在屬性組X上的投影。③計(jì)算(2)結(jié)果中各元素在關(guān)系R中的象集。④判斷各個(gè)象集與(1)中投影的包含關(guān)系,若某個(gè)象集包含S在屬性組Y上的投影,則該象集對(duì)應(yīng)的X上的分量值即為除運(yùn)算的結(jié)果元素。第二章關(guān)系模型和關(guān)系運(yùn)算除運(yùn)算(續(xù))第九十四頁(yè),共一百一十三頁(yè),2022年,8月28日
除運(yùn)算舉例例2.23已知關(guān)系R,S,求RS。ABCa1a2a3a1a4a2a1b1b3b4b2b6b2b2c2c7c6c3c6c3c1RBCDb1b2b2c2c1c3d1d1d2SRSAa1(2)關(guān)系R在A上的投影為{a1,a2,a3,a4}(3)(2)中各個(gè)元素的象集:a1的象集為{(b1,c2),(b2,c3)(b2,c1)}a2的象集為{(b3,c7),(b2,c3)}a3的象集為{(b4,c6)}a4的象集為{(b6,c6)}
(4)判斷:a1的象集包含了S在(B,C)屬性組上的投影,a1所在的元組為滿足條件的元組。第二章關(guān)系模型和關(guān)系運(yùn)算(1)S在(B,C)上的投影為{(b1,c2),(b2,c1),(b2,c3)}滿足條件的元組ABCa1a1a1b1b2b2c2c3c1第九十五頁(yè),共一百一十三頁(yè),2022年,8月28日(2)除法運(yùn)算的含義
數(shù)學(xué)中一般整數(shù)除法運(yùn)算:對(duì)于兩個(gè)整數(shù)R和S,它們的除法運(yùn)算R/S
是滿足以下條件的最大整數(shù)Q。類(lèi)似的在關(guān)系代數(shù)中對(duì)于關(guān)系R和S,它們的除法運(yùn)算是滿足以下條件的最大的一個(gè)關(guān)系實(shí)例Q。
即Q與的笛卡爾積應(yīng)包含于關(guān)系R。其中除運(yùn)算(續(xù))第二章關(guān)系模型和關(guān)系運(yùn)算第九十六頁(yè),共一百一十三頁(yè),2022年,8月28日
上例子中為{a1,a2,a3,a4}。
當(dāng)Q分別等于{a1}、{a2}、{a3}、{a4}時(shí),的結(jié)果分別記為:R1
R2
R3
R4顯然,只有R1
是包含于R的,因而Q={a1}是滿足條件的最大的關(guān)系實(shí)例,也即為。第二章關(guān)系模型和關(guān)系運(yùn)算除運(yùn)算含義(續(xù))ABCa1a1a1b1b2b2c2c1c3ABCa2a2a2b1b2b2c2c1c3ABCa3a3a3b1b2b2c2c1c3ABCa4a4a4b1b2b2c2c1c3第九十七頁(yè),共一百一十三頁(yè),2022年,8月28日(3)除法運(yùn)算的基本運(yùn)算符等效表達(dá)形式根據(jù)關(guān)系除法本質(zhì)含義,可以看出的求解過(guò)程即為在的集合中選擇滿足下列條件的元素x:這個(gè)過(guò)程等價(jià)于將中不滿足以上條件的元素剔除。對(duì)于中的元素,若使得Q={x}時(shí)不能滿足條件,則該元素應(yīng)被剔除。相應(yīng)地,這些應(yīng)被剔除的元素集合可以通過(guò)下列公式獲得:因而的基本運(yùn)算符表達(dá)式即為:
第二章關(guān)系模型和關(guān)系運(yùn)算除運(yùn)算(續(xù))第九十八頁(yè),共一百一十三頁(yè),2022年,8月28日除法運(yùn)算的等效表達(dá)形式(續(xù))Aa1a2a3a4第二章關(guān)系模型和關(guān)系運(yùn)算BCb1b2b2c2c1c3ABCa1a1a1a2a2a2a3a3a3a4a4a4b1b2b2b1b2b2b1b2b2b1b2b2c2c1c3c2c1c3c2c1c3c2c1c3ABCa2a2a3a3a3a4a4a4b1b2b1b2b2b1b2b2c2c1c2c1c3c2c1c3第九十九頁(yè),共一百一十三頁(yè),2022年,8月28日例2.24求選修了2號(hào)課程的學(xué)生的學(xué)號(hào)。Sno(Cno=‘2’(SC))專(zhuān)門(mén)的關(guān)系運(yùn)算(續(xù))第二章關(guān)系模型和關(guān)系運(yùn)算學(xué)號(hào)Sno課程號(hào)Cno成績(jī)Grade95001950019500195002950021232392858890805、綜合應(yīng)用舉例第一百頁(yè),共一百一十三頁(yè),2022年,8月28日例2.25查詢(xún)學(xué)生95001的姓名和所在系。
πSname,Sdept
(σSno=‘95001’(Student))
第二章關(guān)系模型和關(guān)系運(yùn)算綜合應(yīng)用舉例(續(xù))學(xué)號(hào)Sno姓名Sname性別Ssex年齡Sage所在系Sdept95001950029500395004李勇劉晨王敏張立男女女男20191819CSISMAIS第一百零一頁(yè),共一百一十三頁(yè),2022年,8月28日例2.26查詢(xún)選修了1號(hào)課程的學(xué)生姓名。Student(Sno,Sname,Ssex,Sage,Sdept)Course(Cno,Cname,Cpno)SC(Sno,Cno,Grade)
πSname(σCno=’1’
(Student
SC))第二章關(guān)系模型和關(guān)系運(yùn)算綜合應(yīng)用舉例(續(xù))第一百零二頁(yè),共一百一十三頁(yè),2022年,8月28日例2.27查詢(xún)至少選修了兩門(mén)課程的學(xué)生學(xué)號(hào)。SC×SC的部分元組
πSno
(σ1=4∧2≠5(SC×SC))第二章關(guān)系模型和關(guān)系運(yùn)算學(xué)號(hào)Sno課程號(hào)Cno成績(jī)Grade學(xué)號(hào)Sno課程號(hào)Cno成績(jī)Grade9500195001950019500195001950029500295002950029500211111222229292929292909090909095001950019500195002950029500195001950019500295002123231232392858890809285889080綜合應(yīng)用舉例(續(xù))學(xué)號(hào)Sno課程號(hào)Cno成績(jī)Grade9500195001950019500295002123239285889080第一百零三頁(yè),共一百一十三頁(yè),2022年,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年南通貨運(yùn)從業(yè)資格證模擬考試下載安裝
- 2025年盤(pán)錦考貨運(yùn)資格證考試內(nèi)容
- 2024年旅游風(fēng)景區(qū)開(kāi)發(fā)架子工勞務(wù)分包合同
- 2025建設(shè)工程專(zhuān)業(yè)分包合同范本(通過(guò)公司審核)
- 單位人力資源管理制度集錦大合集
- 高端酒店售樓部施工合同
- 2024年桉樹(shù)種植與城鄉(xiāng)綠化合同2篇
- 眼鏡店噪聲污染控制管理規(guī)定
- 停車(chē)場(chǎng)耐磨地面施工合同
- 冷鏈貨物托管合同
- 啟航計(jì)劃培訓(xùn)總結(jié)與反思
- 《電力工程電纜防火封堵施工工藝導(dǎo)則》
- MOOC 作物育種學(xué)-四川農(nóng)業(yè)大學(xué) 中國(guó)大學(xué)慕課答案
- 變電站隱患排查治理總結(jié)報(bào)告
- 車(chē)輛救援及維修服務(wù)方案
- 三體讀書(shū)分享
- 《腎內(nèi)科品管圈》
- 空氣預(yù)熱器市場(chǎng)前景調(diào)研數(shù)據(jù)分析報(bào)告
- 2024年南平實(shí)業(yè)集團(tuán)有限公司招聘筆試參考題庫(kù)附帶答案詳解
- PLC在變電站自動(dòng)化控制中的應(yīng)用案例
- 2024版國(guó)開(kāi)電大法學(xué)本科《合同法》歷年期末考試案例分析題題庫(kù)
評(píng)論
0/150
提交評(píng)論