版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第二章關(guān)系數(shù)據(jù)庫 2.1關(guān)系數(shù)據(jù)庫概述 2.2關(guān)系數(shù)據(jù)結(jié)構(gòu) 2.3關(guān)系的完整性 2.4關(guān)系代數(shù) 2.5關(guān)系演算* 2.6關(guān)系數(shù)據(jù)庫管理系統(tǒng) 2.1關(guān)系數(shù)據(jù)庫概述 關(guān)系數(shù)據(jù)庫系統(tǒng)是支持關(guān)系模型的數(shù)據(jù)庫系統(tǒng) 關(guān)系理論是建立在集合代數(shù)理論基礎(chǔ)上的,關(guān)系的定義和各種操作運(yùn)算可以用集合代數(shù)給出 關(guān)系模型的三要素關(guān)系數(shù)據(jù)結(jié)構(gòu):二維表 關(guān)系操作:選擇、投影、連接、除、并,交、差等查詢以及增、刪、改 完整性約束 :實體、參照、自定義關(guān)系數(shù)據(jù)語言關(guān)系代數(shù)語言 ISBL 關(guān)系演算語言 元組關(guān)系演算語言 ALPHA,QUEL 域關(guān)系演算語言 QBE 具有關(guān)系代數(shù)和關(guān)系演算雙重特點的語言SQL 2.2關(guān)系數(shù)據(jù)結(jié)構(gòu) 2
2、.2.1關(guān)系域:域是一組具有相同數(shù)據(jù)類型的值的集合。值的個數(shù)稱為域的基數(shù) 笛卡兒乘積 :給定一組域:D1,D2,Dn,域可以相同,定義D1D2Dn的笛卡兒乘積為:D1D2Dn(d1,d2,dn) |diDi,i1,2,n ; (d1,d2,dn)稱為一個元組 關(guān)系(Relation):笛卡兒乘積D1D2Dn的任一子集D,稱作D1,D2,Dn上的關(guān)系。 用R(D1,D2Dn)來表示 D中的每個元素(d1,d2,dn)是關(guān)系的一個元組 實際應(yīng)用中關(guān)系往往是笛卡兒乘積中有意義的子集構(gòu)成 n1是單元關(guān)系/一元關(guān)系;n2是二元關(guān)系 舉例域 性別集男、女。基數(shù)2 月份集1,2,3,4,5,6,7,8,9,
3、10,11,12,基數(shù)12 笛卡兒乘積 D1姓名集合趙一平,錢峰,孫英D2性別集合男,女D3年齡集合16,17,18關(guān)系姓名性別年齡趙一平男16錢峰男17孫英女172.2.2關(guān)系模式關(guān)系的描述稱為關(guān)系模式(Relation schema),一般表示為R(U,D,DOM,F) 其中,R是關(guān)系名,U是組成該關(guān)系的屬性集合,D為屬性組U中屬性所來自的域,DOM是屬性向域的映象集合,F(xiàn)是屬性間數(shù)據(jù)的依賴關(guān)系集合。2.2.3關(guān)系數(shù)據(jù)庫 在一個給定的現(xiàn)實世界領(lǐng)域里,所有實體及實體間的聯(lián)系的關(guān)系所構(gòu)成的集合是一個關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫有型和值之分:關(guān)系數(shù)據(jù)庫的型也稱關(guān)系數(shù)據(jù)庫模式,是對關(guān)系數(shù)據(jù)庫的描述它包括若
4、干域的定義以及在這些域上定義的若干關(guān)系模式;關(guān)系數(shù)據(jù)庫的值也稱為關(guān)系數(shù)據(jù)庫,是這些關(guān)系模式在某一時刻對應(yīng)的關(guān)系的集合 關(guān)系數(shù)據(jù)庫的值與關(guān)系數(shù)據(jù)庫模式通稱為關(guān)系數(shù)據(jù)庫 2.3關(guān)系的完整性 實體完整性 若屬性A是基本關(guān)系R的主屬性,則A不能取空值 參照完整性 若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼,它與基本關(guān)系S的主碼Ks相對應(yīng)(關(guān)系R、S不一定是不同的關(guān)系),則對于R中的每一個元組在F上的取值必須:取空值(F的每個屬性值均取空值) 等于S中某個元組的主碼值 自定義完整性 2.4關(guān)系代數(shù) 關(guān)系代數(shù)由一組關(guān)系運(yùn)算組成,是對于關(guān)系的操作集。關(guān)系運(yùn)算以一個或多個關(guān)系作為操作的對象,運(yùn)算結(jié)果是一個新的關(guān)系
5、。用關(guān)系運(yùn)算實現(xiàn)查詢 關(guān)系代數(shù)運(yùn)算符 集合運(yùn)算符:(并)(差)(交)(笛卡兒積) 專門運(yùn)算符:選擇 投影 連接 除 比較運(yùn)算符: = 邏輯運(yùn)算符: 非 與 或 常用的關(guān)系運(yùn)算交、并、差、笛卡兒積、投影、選擇、連接、除 基本關(guān)系運(yùn)算有 并、差、笛卡兒積、投影、選擇同類關(guān)系:具有相同的度,且兩個關(guān)系每個屬性屬同一個域 2.4.1傳統(tǒng)的集合運(yùn)算假設(shè): NameSexAgeZhangF22WangM25LuM37ChenF27RNameSexAgeZhangF22WangM25LuF30SunM28S并(Union):同類關(guān)系R和S的并記為RS,或R union S 定義:RS=t|tR tS注意去除
6、重復(fù)元組 NameSexAgeZhangF22WangM25LuM37ChenF27LuF30SunM28RS 交(Intersection)同類關(guān)系R和S的交記為RS,或R intersect S 定義:RS t|tR tS R(RS) NameSexAgeZhangF22WangM25RS 差(Minus/Difference)同類關(guān)系R和S的差記為RS或R minus S 定義:RS t|tR tS NameSexAgeLuM37ChenF27RS 笛卡兒積(Cartesian Product)關(guān)系R和S的笛卡兒積記為RS 定義:RS ts|tR, sS CNoCNC-11OSC-21D
7、BSNoSNAgeS-01Huang21S-21Lin20S-30Shao22CNoCNSNoSNAgeC-11OSS-01Huang21C-11OSS-21Lin20C-11OSS-30Shao22C-21DBS-01Huang21C-21DBS-21Lin20C-21DBS-30Shao22R S RS 2.4.2專門的關(guān)系運(yùn)算引入以下記號 : 設(shè)關(guān)系模式R(A1,A2,An),它的一個關(guān)系為Rt,tRt表示t是Rt的一個元組。tAi則表示元組t中相應(yīng)于Ai的一個分量 若AAi1,Ai2,Aik是A1,A2,An的一部分,k=18(Student) 連接(Join)從兩個關(guān)系的笛卡兒乘積中
8、選取屬性滿足一定條件的元組,組成新的關(guān)系 記做:R S trts| trR tsS trAtsB AB AB (RS) AB表示R上的屬性A和S上的屬性B滿足條件,是比較運(yùn)算符,A、B的度數(shù)相等且可比。這里假設(shè)AB分別在R、S關(guān)系的第i、j列,R度為r 等值連接(equijoin):為“”時稱為等值連接記:R S trts| trR tsS trAtsB A=B 自然連接(Natioal Join):兩個關(guān)系中具有相同的屬性,并且在相同的屬性上做等值連接。自然連接需要取消重復(fù)列,而等值連接不需要 。記:R S trts| trR tsS trAtsA BEF20E1F150E2F340E3F1
9、S ABCDEF3020C1D3E1F14020C2D3E1F15020C3D1E1F15040C3D1E3F1ACD30C1D340C2D350C3D110C4D1假設(shè) R R S AB 除法(Division)給定關(guān)系R(X,Y)和S(Y,Z),其中X,Y,Z為屬性組,R中的Y與S中的Y可以不同屬性名,但必須有相同的域。記RS。令P(X)RS,則P是R中滿足以下條件的元組在X屬性列上的投影:元組在X上的分量值x的象集Yx包含S在Y上投影的集合記做:RStrX|trR YxY(S) RS X(R)X(X(R)Y(S)R) ABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2
10、b2c3a1b2c1假設(shè) R BCDb1c2d1b2c1d1b2c3d2S Aa1RS b1c2b2c1b2c3b2c3b3c7b4c6b6c6Yxa1Yxa2Yxa3Yxa4象集: 外連接(Outer Join)如果R和S在做自然連接時,把該舍棄的元組也保存在新關(guān)系中,在新增加的屬性上填空值(null),這種操作稱為“外連接”。如果把R中該舍棄的元組保留在新關(guān)系中稱左連接;把S中該舍棄的元組保留在新關(guān)系中稱右連接 外部并(Outer Union) 若關(guān)系R和S不同類,則新關(guān)系的屬性由R和S的屬性組成,公共屬性只取一次,新關(guān)系的元組由屬于R或S的元組構(gòu)成,新增的屬性上均填空(null) 半連接
11、(Semijoin) 關(guān)系R和S的半連接定義為R和S的自然連接在關(guān)系R的屬性集上的投影 ABCabcbbfcadBCDbcdbceadbefg假設(shè) R S ABCDabcdabcecadbbbfnullnullefgABCDabcdabcecadbbbfnullR Outer Join S R left Outer Join S ABCDabcdabcecadbnullefgABCDabcnullbbfnullcadnullnullbcdnullbcenulladbnullefgABCabcabccadBCDbcdbceadbR right Outer Join S R Outer Union
12、 S R Semijoin S R(R S) S Semijoin R S(R S) 2.4.3*關(guān)系代數(shù)運(yùn)算應(yīng)用舉例 假設(shè)S(S,SN,SSEX,SAGE)C(C,CN,TEACHER)SC(S,C,GRADE)檢索學(xué)習(xí)課程號為C2的學(xué)生學(xué)號與成績 S#,GRADE( C#=C2(SC) 或1,3( 2=C2(SC) 檢索學(xué)習(xí)課程號為C2的學(xué)生學(xué)號與姓名 S#,SN( C#=C2(S SC) 檢索選修課程名為Maths的學(xué)生學(xué)號與姓名 S#,SN( CN=Maths(S SC C) 檢索選修課程為C2或C4的學(xué)生學(xué)號 S#( C#=C2 C#=C4(SC) )檢索至少選修課程為C2和C4的學(xué)
13、生學(xué)號 S#( 14 2=C2 5=C4(SCSC)檢索不選修C2課程的學(xué)生姓名與年齡 SN,SAGE (S)SN,SAGE( C#=C2(SC S) 檢索選修全部課程的學(xué)生姓名 SN(S (S#,C#(SC) C#(C) ) ) 檢索所學(xué)課程包含學(xué)生S3所學(xué)課程的學(xué)生學(xué)號 S#,C#(SC) C# ( S#=S3(SC) 2.4.4關(guān)系代數(shù)式的等價規(guī)則1.連接、笛卡爾積交換律E1E2 E2E1E1 E2 E2 E1E1 F E2 E2 F E12.連接、笛卡爾積結(jié)合律(E1E2) E3 E1(E2E3)(E1 E2) E3 E1 (E2 E3)(E1 F1 E2) F2 E3 E1 F1 (
14、E2 F2 E3) 3.投影的串接定律A1,A2,An(Ak1,Ak2,Akm (R) A1,A2,An (R) A1,A2,An是Ak1,Ak2,Akm 的子集4.選擇的串接定律 F1( F2(R) F1F2(R)5.選擇與投影的交換律 A1,A2,An (F(R) F(A1,A2,An (R)A1,A2,An (F(R) A1,A2,An (F(A1,A2,An,B1,B2,.Bn (R)例: A ( R.A=S.B(RS) A ( R.A=S.B( A,B (RS) A ( R.A=S.B( A(R)B(S)6.選擇對笛卡爾積的分配率 F ( E1E2) F1 ( E1) F2 ( E2
15、)F=F1F2,F1只涉及E1,F(xiàn)2只涉及E2 F ( E1E2) F ( E1) E2F只涉及E1 F ( E1E2) F2( F1 ( E1) E2)F1只涉及E1,F(xiàn)2涉及E1,E27.選擇對并的分配率 F ( E1E2) F1 ( E1) F2 ( E2)8.選擇對差的分配率 F ( E1 - E2) F1 ( E1) - F2 ( E2)9.投影對笛卡爾積的分配率A1,A2,An,B1,B2,.Bn (E1E2) A1,A2,An(E1) B1,B2,.Bn (E2) A1,A2,An是E1屬性,B1,B2,.Bn是E2 屬性10.投影對并的分配率 A1,A2,An(E1E2) A1
16、,A2,An(E1)A1,A2,An(E2) 11.選擇對自然連接的分配率 F ( E1 E2) F1 ( E1) F2 ( E2)F=F1F2,F1只涉及E1,F(xiàn)2只涉及E212.選擇與連接操作的結(jié)合率 F ( E1E2) E1 F E2 F形如E1.A E2.B F1 ( E1 F2 E2) E1 F1F2 E2 F1,F2形如E1.A E2.B利用規(guī)則優(yōu)化查詢例:設(shè)學(xué)生選課系統(tǒng)中,學(xué)生關(guān)系S有1000條記錄,每個學(xué)生平均選課10門,則SC關(guān)系有10000條記錄,課程關(guān)系C有1000條記錄。若需要查詢學(xué)生“王芳”所選修課程的成績在85分以上的課程名。設(shè) F1表示S.sno=SC.sno F
17、2表示SC.cno=C.cno F3表示S.sn=王芳 F4表示SC.grade=85 cn(F1F2F3F4(SSCC) 1010條連接記錄O(1010) cn(F3F4(S F1SC F2C) 104條記錄,運(yùn)算O(1010) cn(F3(S)F4(SC) C) =10條記錄,運(yùn)算O(104) 優(yōu)化過程 cn (F1F2F3F4(SSCC) /式 = cn (F3F4F2(F1(SSC)C) /規(guī)則4,2 = cn (F3F4F2(F1(SSC)C) /規(guī)則6 = cn (F3F4 F2 (S SC)C) /規(guī)則12 = cn (F3F4 (S SC) C) /規(guī)則12 式 = cn (F
18、3(S) F4(SC) C) /規(guī)則11 式基于語法樹優(yōu)化檢索選修D(zhuǎn)B課程的女生學(xué)號及姓名。 sno,sname(cname=dbsex=F(S.sno=SC.snoSC.cno=C.no (SSCC) sno,snamecname=dbsex=FS.sno=SC.snoSC.cno=C.noSCCS初始語法樹 sno,snamecname=dbsex=FS.sno=SC.snoSC.cno=C.noSCCS條件分解條件下移 sno,snamesex=FS.sno=SC.snoSCCScname=dbSC.cno=C.no sno,snamesex=FS.sno=SC.snoSCCScname=dbSC.cno=C.no投影前移 sno,sname sno cno sno,cno sno,snamesex=FS.sno=SC.snoSCCScname=dbSC.cno=C.no笛卡爾積和選擇合成連接 sno,sname sno sno,cno cno sno,
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年農(nóng)村電商物流解決方案課程
- 2026重慶某國有企業(yè)員工招聘2人備考題庫及答案詳解(奪冠系列)
- 企業(yè)網(wǎng)絡(luò)安全架構(gòu)設(shè)計服務(wù)手冊
- 2026年軌道交通信號系統(tǒng)維護(hù)指南
- 2026年交通信號智能調(diào)控技術(shù)培訓(xùn)
- 職業(yè)噪聲暴露者睡眠障礙的運(yùn)動療法
- 2021學(xué)年高三政治下學(xué)期入學(xué)考試試題一
- 船員基本安全培訓(xùn)真題課件
- 職業(yè)健康預(yù)警模型的倫理與法律
- 職業(yè)健康檔案電子化開放平臺建設(shè)與應(yīng)用
- 量子科普知識
- 2025至2030中國航空安全行業(yè)市場深度研究與戰(zhàn)略咨詢分析報告
- 華潤燃?xì)?026屆校園招聘“菁英計劃·管培生”全面開啟備考考試題庫及答案解析
- 成本管理論文開題報告
- 華潤集團(tuán)6S管理
- 新建粉煤灰填埋場施工方案
- 2025年提高缺氧耐受力食品行業(yè)分析報告及未來發(fā)展趨勢預(yù)測
- 小學(xué)三年級數(shù)學(xué)判斷題100題帶答案
- 互聯(lián)網(wǎng)運(yùn)維服務(wù)保障承諾函8篇范文
- 電力三種人安全培訓(xùn)課件
- 電子科技大學(xué)自主招生人工智能自薦信范文
評論
0/150
提交評論