歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁(yè) 裝配圖網(wǎng) > 資源分類 > PPT文檔下載  

數(shù)據(jù)庫(kù)原理-2關(guān)系數(shù)據(jù)庫(kù).ppt

  • 資源ID:14120862       資源大?。?span id="fcu050b" class="font-tahoma">964.06KB        全文頁(yè)數(shù):99頁(yè)
  • 資源格式: PPT        下載積分:14.9積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要14.9積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號(hào),方便查詢和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁(yè)到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請(qǐng)知曉。

數(shù)據(jù)庫(kù)原理-2關(guān)系數(shù)據(jù)庫(kù).ppt

數(shù)據(jù)庫(kù)系統(tǒng)原理(第2章),第二章關(guān)系數(shù)據(jù)庫(kù),2-5章為本課程重點(diǎn)與難點(diǎn)關(guān)系數(shù)據(jù)庫(kù)的理論基礎(chǔ)1970,E.F.Codd“ARelationalModelofDataforSharedDataBanks”現(xiàn)代主流數(shù)據(jù)庫(kù)幾乎全部支持關(guān)系模型Oracle(甲骨文),Sybase,IBMDB2,MSSQLServer,Ingres,2.1關(guān)系模型概述,關(guān)系模型由關(guān)系數(shù)據(jù)庫(kù)、關(guān)系操作集合和關(guān)系完整性約束三部分組成。單一的數(shù)據(jù)結(jié)構(gòu)關(guān)系實(shí)體和實(shí)體之間的聯(lián)系都用關(guān)系描述,二.關(guān)系操作就關(guān)系模型而言,僅僅給出了關(guān)系操作的能力,并不給定(限定)RDBMS語(yǔ)言的語(yǔ)法要求。關(guān)系操作的特點(diǎn):一次一集合的操作方式Set-at-a-Time操作的對(duì)象和結(jié)果都是關(guān)系。,三種具有相同表達(dá)能力的抽象查詢語(yǔ)言:關(guān)系代數(shù)ISBL元組關(guān)系演算語(yǔ)言ALPHA,QUEL域關(guān)系演算語(yǔ)言QBE,SQL則是介于關(guān)系代數(shù)和關(guān)系演算之間的標(biāo)準(zhǔn)查詢語(yǔ)言。由IBM提出,是應(yīng)用得最廣泛的關(guān)系數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)語(yǔ)言。,三.關(guān)系的三類完整性約束條件關(guān)系模型必須滿足:實(shí)體完整性和參照完整性約束。應(yīng)用領(lǐng)域中的大量語(yǔ)義約束則由DBMS實(shí)現(xiàn)的用戶定義完整性保證。注意:這是由DBMS來保證的,而非應(yīng)用程序保證。,2.2關(guān)系數(shù)據(jù)結(jié)構(gòu)及其形式化定義,從集合論的角度給出關(guān)系數(shù)據(jù)結(jié)構(gòu)的形式化定義。(需要離散數(shù)學(xué)集合論的概念)2.2.1關(guān)系(Relation)1.域定義2.1:域是具有相同數(shù)據(jù)類型的值的集合。如自然數(shù),全班同學(xué)的名字等。,2.2笛卡兒集(卡氏集)定義2.2給定一組域D1,D2,Dn,這些域中可以有相同的,D1,D2,Dn的笛卡兒集為:D1D2Dn(d1,d2,dn)|diDi,i=1,2,n,其中每一個(gè)元素稱為一個(gè)n元組,元素中的每個(gè)值稱為一個(gè)分量。,例:D1=大,中,小,D2=紅,綠,例:D1=大,中,小,D2=紅,綠D1D2=(大,紅),(大,綠),(中,紅),(中,綠),(小,紅),(小,綠)共有326個(gè)2元組,注意:集合論中笛卡兒集不滿足交換率,即笛卡兒集的元組有序?;鶖?shù)的概念:若Di(i=1,2,n)為有限集,其基數(shù)為|Di|,則D1D2Dn的基數(shù)為:|D1|D2|Dn|,3.關(guān)系定義2.3D1D2Dn的任意子集叫做在域D1,D2,Dn上的關(guān)系,可記做:R(D1,D2,Dn),R為關(guān)系名,n是關(guān)系的目或度(degree)。,注意:1.這里的“子集”是“任意子集”,包括空集。2.笛卡兒集不滿足交換率,而關(guān)系通過給關(guān)系的列附加屬性名的方式取消元組的有序性。3.按2.3的定義,關(guān)系可以是無限集。通常我們?cè)陉P(guān)系數(shù)據(jù)模型中限定關(guān)系為有限關(guān)系。,候選碼若關(guān)系中的某一屬性組的值能唯一地標(biāo)識(shí)一個(gè)元組,則稱該屬性組為該關(guān)系的一個(gè)候選碼(CandidateKey)。一個(gè)關(guān)系可能有多個(gè)候選碼,則選定其中一個(gè)作為主碼(PrimaryKey)。包含在任何候選碼中的屬性稱為主屬性,不包含在任何候選碼中的屬性稱為非主屬性。全碼(All-Key)關(guān)系模式的所有屬性組構(gòu)成此關(guān)系模式的唯一候選碼。,基本關(guān)系六性質(zhì)列是同質(zhì)的;不同列可出自同一個(gè)域,每一列為一個(gè)屬性,不同屬性(列)給不同屬性名;列的順序可任意交換;任意兩個(gè)元組不能完全相同;行的順序可任意交換;每一分量是不可分的數(shù)據(jù)項(xiàng)。記憶方法:三列兩行一分量。,注意:在許多實(shí)際關(guān)系數(shù)據(jù)庫(kù)產(chǎn)品中,基本表并不完全具有這六條性質(zhì),例如,有的數(shù)據(jù)庫(kù)產(chǎn)品(如FoxPro)仍然區(qū)分了屬性順序和元組的順序;許多關(guān)系數(shù)據(jù)庫(kù)產(chǎn)品中,例如Oracle,F(xiàn)oxPro等,它們都允許關(guān)系表中存在兩個(gè)完全相同的元組。,2.2.2關(guān)系模式關(guān)系模式是對(duì)關(guān)系的描述。(是對(duì)型的描述)需描述元組集合的結(jié)構(gòu):由哪些屬性構(gòu)成,這些屬性來自哪些域,以及屬性與域之間的映象關(guān)系。此外,關(guān)系模式應(yīng)刻劃出完整性約束條件。,定義2.4關(guān)系的描述稱為關(guān)系模式,可表述為:R(U,D,dom,F(xiàn))其中R為關(guān)系名,U為組成該關(guān)系地屬性名集合,D為屬性組U中屬性所來自的域,dom為屬性向域的映象集合,F(xiàn)為屬性間數(shù)據(jù)的依賴關(guān)系集。,關(guān)系模式通??梢院?jiǎn)記為:R(U)或R(A1,A2,AN)其中R為關(guān)系名,A1,A2,AN為屬性名。而域名及屬性向域的映象常常直接說明為屬性的類型、長(zhǎng)度。關(guān)系模式是靜態(tài)度、穩(wěn)定的,而關(guān)系是動(dòng)態(tài)的、隨時(shí)間變化的,兩者是型與值的關(guān)系。,2.2.3關(guān)系數(shù)據(jù)庫(kù)在給定應(yīng)用領(lǐng)域中,用于描述所有實(shí)體和實(shí)體間的聯(lián)系的關(guān)系的集合構(gòu)成一個(gè)關(guān)系數(shù)據(jù)庫(kù)。同樣,關(guān)系數(shù)據(jù)庫(kù)也有型和值之分。型:關(guān)系數(shù)據(jù)庫(kù)模式是對(duì)關(guān)系數(shù)據(jù)庫(kù)的描述。值:一般就稱為關(guān)系數(shù)據(jù)庫(kù)。,2.3關(guān)系的完整性,關(guān)系模型的完整性規(guī)則是對(duì)關(guān)系的某種約束條件。關(guān)系模型的三類完整性:實(shí)體完整性參照完整性用戶定義的完整性,其中實(shí)體完整性和參照完整性是關(guān)系模型必須滿足的完整性約束條件,被稱為是關(guān)系的兩個(gè)不變性,應(yīng)該由關(guān)系系統(tǒng)自動(dòng)支持。一、實(shí)體完整性實(shí)體完整性規(guī)則(規(guī)則2.1):每一關(guān)系必有一主碼,構(gòu)成主碼的各屬性值均不能取空值。實(shí)體完整性規(guī)則規(guī)定基本關(guān)系的所有主碼的各屬性都不能取空值,而不僅是主碼整體不能取空值。,例如學(xué)生選課關(guān)系“選修(學(xué)號(hào),課程號(hào),成績(jī))”中,“學(xué)號(hào)、課程號(hào)”為主碼,則“學(xué)號(hào)”和“課程號(hào)”都不能取空值,而不是整體不為空。實(shí)體完整性可以引申一下,主碼也不能取重復(fù)值。,有關(guān)實(shí)體完整性的說明:(1)實(shí)體完整性規(guī)則是針對(duì)基本關(guān)系而言的。一個(gè)基本表通常對(duì)應(yīng)現(xiàn)實(shí)世界的一個(gè)實(shí)體集。(名字怎么來的)(2)現(xiàn)實(shí)世界中的實(shí)體是可區(qū)分的,即它們具有某種唯一性標(biāo)識(shí)。(3)相應(yīng)地,關(guān)系模型中以主碼作為唯一標(biāo)識(shí)。(4)主碼中的屬性即主屬性不能取空值。所謂空值就是“不知道”或“不確定”的值。,二、參照完整性現(xiàn)實(shí)世界中的實(shí)體之間往往存在某種聯(lián)系,在關(guān)系模型中實(shí)體及實(shí)體間的聯(lián)系都是用關(guān)系來描述的。這樣就自然存在著關(guān)系與關(guān)系之間的引用。引用的時(shí)候,必須取基本表中已經(jīng)存在的值。由此引出參照的引用規(guī)則。參照完整性規(guī)則就是定義外碼與主碼之間的引用規(guī)則。,定義2.5設(shè)F是基本關(guān)系R的一個(gè)或一組屬性,但不是關(guān)系R的碼,如果F與基本關(guān)系S的主碼Ks相對(duì)應(yīng),則稱F是基本關(guān)系R的外碼(Foreignkey),并稱基本關(guān)系R為參照關(guān)系(Referencingrelation),基本關(guān)系S為被參照關(guān)系(Referencedrelation)或目標(biāo)關(guān)系(Targetrelation)。關(guān)系R和S不一定是不同的關(guān)系。,參照完整性規(guī)則(規(guī)則2.2):若屬性(或?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è)元組的主碼值。,例如,學(xué)生選課系統(tǒng),選課關(guān)系的學(xué)號(hào)按實(shí)體完整性要求,不能為空;按參照完整性要求,只能選學(xué)生關(guān)系中的學(xué)號(hào),表示語(yǔ)義關(guān)系“只有注冊(cè)的學(xué)生才能選課”。課程號(hào)也類似(請(qǐng)同學(xué)們自己考慮)。,三、用戶定義的完整性(User-definedintegrity)實(shí)體完整性和參照性適用于任何關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)。除此之外,不同的關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)根據(jù)其應(yīng)用環(huán)境的不同,往往還需要一些特殊的約束條件。用戶定義的完整性就是針對(duì)某一具體關(guān)系數(shù)據(jù)庫(kù)的約束條件,它反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語(yǔ)義要求。關(guān)系模型應(yīng)提供定義和檢驗(yàn)這類完整性的機(jī)制,以便用統(tǒng)一的系統(tǒng)的方法處理它們,而不要由應(yīng)用程序承擔(dān)這一功能。,2.4關(guān)系代數(shù),本節(jié)要求給定關(guān)系和關(guān)系代數(shù)表達(dá)式,要會(huì)算。給定關(guān)系模式和查詢(語(yǔ)義)要求,要會(huì)寫關(guān)系代數(shù)表達(dá)式。,關(guān)系代數(shù)是一種抽象的查詢語(yǔ)言,用對(duì)關(guān)系的運(yùn)算來表達(dá)查詢,作為研究關(guān)系數(shù)據(jù)語(yǔ)言的數(shù)學(xué)工具。關(guān)系代數(shù)的運(yùn)算對(duì)象是關(guān)系,運(yùn)算結(jié)果亦為關(guān)系。關(guān)系代數(shù)用到的運(yùn)算符包括四類:集合運(yùn)算符、專門的關(guān)系運(yùn)算符、算術(shù)比較符和邏輯運(yùn)算符。,比較運(yùn)算符和邏輯運(yùn)算符是用來輔助專門的關(guān)系運(yùn)算符進(jìn)行操作的,所以關(guān)系代數(shù)的運(yùn)算按運(yùn)算符的不同,主要分為傳統(tǒng)的集合運(yùn)算和專門的關(guān)系運(yùn)算兩類。,2.4.1傳統(tǒng)的集合運(yùn)算,是四種二目運(yùn)算:,把關(guān)系看作元組的集合,于是,這四種運(yùn)算與傳統(tǒng)集合運(yùn)算類似。,其中,三種運(yùn)算要求參與運(yùn)算的兩個(gè)關(guān)系R,S具有相同的目n,且相應(yīng)屬性取自同一個(gè)域。并:RSt|tRtS交:RSt|tRtS差:RSt|tRtS,廣義笛卡爾積(Extendedcartesianproduct)元組連接的記號(hào):R為n目關(guān)系,S為m目關(guān)系。trts稱為元組的連接(Concatenation)。它是一個(gè)(n+m)列的元組,前n個(gè)分量為R中的一個(gè)n元組,后m個(gè)分量為S中的一個(gè)m元組。,兩個(gè)分別為n目和m目的關(guān)系R和S的廣義笛卡爾積是一個(gè)(n+m)列的元組的集合。元組的前n列是關(guān)系R的一個(gè)元組,后m列是關(guān)系S的一個(gè)元組。記作:RStrts|trRtsS若R有k1個(gè)元組,S有k2個(gè)元組,則關(guān)系R和關(guān)系S的廣義笛卡爾積有k1k2個(gè)元組。,2.4.2專門的關(guān)系運(yùn)算,一般包括選擇、投影、連接和除。,1.選擇選擇又稱為限制(Restriction)。它是在關(guān)系R中選擇滿足給定條件的諸元組,記作:F(R)=t|tRF(t)=真其中F表示選擇條件,它是一個(gè)邏輯表達(dá)式,取邏輯值真或假。,邏輯表達(dá)式F的基本形式為:X1Y1X2Y2表示比較運(yùn)算符,它可以是、或。X1、Y1等是屬性名或常量或簡(jiǎn)單函數(shù)。屬性名也可以用它的序號(hào)來代替。表示邏輯運(yùn)算符,它可以是、或。因此選擇運(yùn)算實(shí)際上是從關(guān)系R中選取使邏輯表達(dá)式F為真的元組。這是從行的角度進(jìn)行的運(yùn)算。,設(shè)有一個(gè)學(xué)生-課程關(guān)系數(shù)據(jù)庫(kù),包括學(xué)生關(guān)系Student、課程關(guān)系Course和選修關(guān)系SC。(下面的例子都針對(duì)這三個(gè)關(guān)系進(jìn)行運(yùn)算。)例1查詢信息系(IS系)全體學(xué)生Sdept=IS(Student)或4=IS(Student)例2查詢年齡小于20歲的元組Sage<20(Student)或4<20(Student)。,補(bǔ)充例1:查詢信息系的年齡小于20歲的學(xué)生,補(bǔ)充例1:查詢信息系的年齡小于20歲的學(xué)生Sdept=ISSage<20(Student),補(bǔ)充例1:查詢信息系的年齡小于20歲的學(xué)生Sdept=ISSage<20(Student)當(dāng)然也可以表示為Sdept=IS(Student)Sage<20(Student)(注:雙目運(yùn)算符的優(yōu)先級(jí)低于單目運(yùn)算符),2.投影(Projection)先介紹與投影有關(guān)的兩個(gè)記號(hào):一.(元組屬性分量記號(hào))設(shè)關(guān)系模式為R(A1,A2,An)。它的一個(gè)關(guān)系設(shè)為R。tR表示t是R的一個(gè)元組。tAi則表示元組t中相應(yīng)于屬性Ai的一個(gè)分量。,二.(元組屬性列分量記號(hào))若A=Ai1,Ai2,Aik,其中Ai1,Ai2,Aik是A1,A2,An中的一部分,則A稱為屬性列或域列。A則表示A1,A2,An中去掉Ai1,Ai2,Aik后剩余的屬性組。tA=(tAi1,tAi2,tAik)表示元組t在屬性列A上諸分量的集合。,關(guān)系R上的投影是從R中選擇出若干屬性列組成新的關(guān)系。記作:A(R)=tA|tR其中A為R中的屬性列。基本思想是從關(guān)系中消除某些屬性,投影也可能消除掉某些行。因?yàn)槿∠四承傩粤泻?,就可能出現(xiàn)重復(fù)行,應(yīng)取消這些完全相同的行。,例3查詢學(xué)生關(guān)系Student在學(xué)生姓名和所在系兩個(gè)屬性上的投影Sname,Sdept(Student)或2,5(Student),例4查詢學(xué)生關(guān)系Student中都有哪些系,即查詢學(xué)生關(guān)系Student在所在系屬性上的投影:Sdept(Student),補(bǔ)充例2:(投影與選擇的混合運(yùn)算)查詢信息系學(xué)生的姓名和年齡。,補(bǔ)充例2:(投影與選擇的混合運(yùn)算)查詢信息系學(xué)生的姓名和年齡。Sname,SageSdept=IS(Student)(注:?jiǎn)文窟\(yùn)算為右結(jié)合),3.連接連接也稱為連接。它是從兩個(gè)關(guān)系的笛卡爾積中選取屬性間滿足一定條件的元組。記作:RS=trts|trRtsStrAtsBAB其中A和B分別為R和S上度數(shù)相等且可比的屬性組。是比較運(yùn)算符。連接運(yùn)算從R和S的笛卡爾積RS中選?。≧關(guān)系)在A屬性組上的值與(S關(guān)系)在B屬性組上值滿足比較關(guān)系的元組。,連接運(yùn)算中有兩種最為重要也最為常用的連接,一種是等值連接(equi-join),另一種是自然連接(Naturaljoin)。為“”的連接運(yùn)算稱為等值連接(equi-join)。它是從關(guān)系R與S的笛卡爾積中選取A、B屬性值相等的那些元組。自然連接(Naturaljoin)是一種特殊的等值連接,它要求兩個(gè)關(guān)系中進(jìn)行比較的分量必須是相同的屬性組,并且要在結(jié)果中把重復(fù)的屬性去掉。一般的連接操作是從行的角度進(jìn)行運(yùn)算。但自然連接還需要取消了重復(fù)列,所以是同時(shí)從行和列的角度進(jìn)行運(yùn)算。,連接的計(jì)算首先根據(jù)連接的類型(連接、自然連接),確定結(jié)果的屬性。計(jì)算過程類似二重循環(huán)。如P50.圖2.6(c)(d)(e),補(bǔ)充例3:求選了2號(hào)課程的學(xué)生的學(xué)號(hào)和姓名。,補(bǔ)充例3:求選了2號(hào)課程的學(xué)生的學(xué)號(hào)和姓名。Sno,SName(StudentCno=2SC),補(bǔ)充例4:求選修數(shù)據(jù)庫(kù)原理的學(xué)生的學(xué)號(hào)和姓名。Sno,SName(StudentSCCname=數(shù)據(jù)庫(kù)原理Course),注意:自然連接在沒有相同的屬性組時(shí)退化為廣義笛卡兒集運(yùn)算。,4.除()先介紹與除有關(guān)的記號(hào):(象集記號(hào))給定一個(gè)關(guān)系R(X,Y),X和Y為屬性組。我們定義,當(dāng)tX=x時(shí),x在R中的象集(ImagesSet)為:Yx=tY|tR,tX=x它表示R中屬性組X上值為x的諸元組在Y上分量的集合。,補(bǔ)充例5:象集的計(jì)算。設(shè)R(A,B)如下AB-1aa1ab2st1mm求B1,計(jì)算過程考察r的每一個(gè)元組t如果tA=1,則把tB放入結(jié)果。得如下:B-aaabmm,除的定義:給定關(guān)系R(X,Y)和S(Y,Z),其中X,Y,Z為屬性組。R中的Y與S中的Y可以有不同的屬性名,但必須出自相同的域集。R與S的除運(yùn)算得到一個(gè)新的關(guān)系P(X),P是R中滿足下列條件的元組在X屬性列上的投影:元組在X上分量值x的象集Yx包含S在Y上投影的集合。記作:RS=tX|tRY(S)Yx其中Yx為x在R中的象集,x=tX。,書例6.(p62)分析:R的A相當(dāng)于X,B和C相當(dāng)于YS的B和C相當(dāng)于Y,D相當(dāng)于Z(與結(jié)果無關(guān))。除的結(jié)果只有A一個(gè)屬性。a1出現(xiàn)在R的第1,4,7行,所以象集為(b1,c2),(b2,c3),(b2,c1)而S在(B,C)上的投影為(b1,c2),(b2,c1),(b2,c3)a1的象集包含量S在(B,C)上的投影,所以a1出現(xiàn)在結(jié)果中,類似的,a2,a3,a4的象集均不包含S在(B,C)上的投影。所以它們不出現(xiàn)在結(jié)果中。,例7.(不用臨時(shí)關(guān)系,改用完整表達(dá)式)Sno,Cno(SC)CnoCno=1Cno=3(SC)可以看出,除運(yùn)算有“包含”的語(yǔ)義。對(duì)于同一個(gè)查詢,關(guān)系代數(shù)表達(dá)式可能不唯一。,關(guān)系運(yùn)算的第二種劃分方法:5種基本運(yùn)算和3種附加運(yùn)算。交()的基本運(yùn)算表達(dá):RS=R-(R-S)RS=S-(S-R)RS=(R-(R-S)(S-(S-R),連接的表達(dá):RS=F(RS)F,除的表達(dá):RS=x(R)-x(x(R)y(S)-R),2.5關(guān)系演算,關(guān)系演算是以數(shù)理邏輯中的謂詞演算為基礎(chǔ)的。按謂詞變?cè)牟煌?,關(guān)系演算可分為元組關(guān)系演算和域關(guān)系演算。本節(jié)我們通過兩個(gè)實(shí)際的關(guān)系演算語(yǔ)言來介紹關(guān)系演算的思想。本節(jié)內(nèi)容僅要求了解。,2.5.1元組關(guān)系演算語(yǔ)言ALPHA(簡(jiǎn)單了解)元組關(guān)系演算以元組變量作為謂詞變?cè)幕緦?duì)象。一種典型的元組關(guān)系演算語(yǔ)言是E.F.Codd提出ALPHA語(yǔ)言,這一語(yǔ)言雖然沒有實(shí)際實(shí)現(xiàn),但關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)INGRES所用的QUEL語(yǔ)言是參照ALPHA語(yǔ)言研制的,與ALPHA十分類似。,ALPHA語(yǔ)言主要有GET、PUT、HOLD、UPDATE、DELETE、DROP六條語(yǔ)句,語(yǔ)句的基本格式是:操作語(yǔ)句工作空間名(表達(dá)式):操作條件,一、檢索操作檢索操作用GET語(yǔ)句實(shí)現(xiàn)。(1)簡(jiǎn)單檢索(即不帶條件的檢索)例1查詢所有被選修的課程號(hào)碼。GETW(SC.Cno)注意與“查詢所有的課程號(hào)碼”的區(qū)別。GETW(Course.Cno),(2)限定的檢索(即帶條件的檢索)例2GETW(Student.Sno,Student.Sage):Student.Sdept=ISStudent.Sage<20,(3)帶排序的檢索例4查詢計(jì)算機(jī)科學(xué)系(CS)學(xué)生的學(xué)號(hào)、年齡,結(jié)果按年降序排序。GETW(Student.Sno,Student.Sage):Student.Sdept=CSDOWNStudent.Sage,(4)帶定額(指定結(jié)果數(shù)量)的檢索例6查詢信息系(IS)年齡最大的學(xué)生的學(xué)號(hào)及其年齡,結(jié)果按年齡降序排序。GETW(3)(Student.Sno,Student.Sage):Student.Sdept=ISDOWNStudent.Sage,(5)用元組變量的檢索格式:RANGE表名變量名元組變量?jī)蓚€(gè)用處:1.簡(jiǎn)化關(guān)系名;2.操作條件中使用量詞時(shí)必須使用元組變量。一般情況下,操作條件中如果用到了不出現(xiàn)在結(jié)果表達(dá)式中的表時(shí),必須使用量詞。例如,一般連接查詢常用到存在量詞。,例7查詢信息系學(xué)生的名字RANGEStudentXGETW(X.Sname):X.Sdept=IS,(6)用存在量詞的檢索注意語(yǔ)義要求,“有一個(gè)”,“任意”等語(yǔ)義。例8查詢選修2號(hào)課程的學(xué)生的名字RANGESCXGETW(Student.Sname):X(X.Sno=Student.SnoX.Cno=2)(理解:存在一條選課記錄SC(即X),使得X是要求的學(xué)生Student所選的,且X的課程號(hào)是2),(7)帶有多個(gè)關(guān)系的表達(dá)式的檢索例:查詢成績(jī)?cè)?0分以上的學(xué)生名字與課程名字。RANGESCSCXGETW(Student.Sname,Course.Cname):SCX(Student.Sno=SCX.SnoCSX.Cno=Course.CnoCSX.Grade=90)(注:結(jié)果表達(dá)式中出現(xiàn)的表不需要存在量詞),(8)用全稱量詞的檢索例:不選1號(hào)課程的學(xué)生的姓名,類似上例:GETW(Student.Sname):SCX(Student.Sno=SCX.SnoSCS.Cno=1)(理解:要求的學(xué)生不存在1號(hào)課程的選課記錄),也可改為全稱量詞:RANGESCSCXGETW(Student.Sname):SCX(Student.SnoSCX.SnoCS.Cno1)(理解:對(duì)于要求的學(xué)生,每一條選課記錄要么不是他選的,要么不是選的1號(hào)課程),(9)用兩種量詞的檢索根據(jù)語(yǔ)義分清使用全稱和存在量詞的條件。例13查詢選修了全部課程的學(xué)生姓名RANGECourseCXRANGESCSCXGETW(Student.Sname):CXSCX(SCX.Sno=Student.SnoSCX.Cno=CX.Cno)(理解:要求的學(xué)生,對(duì)每一門課程都存在相應(yīng)的選課記錄。),(10)用蘊(yùn)函(Implication)的檢索例14:查詢最少選修了95002號(hào)學(xué)生所選全部課程的學(xué)生的學(xué)號(hào)。P:學(xué)生95002選修了課程CX。q:學(xué)生Y也選了課程CX。轉(zhuǎn)換為CX(p-q)的問題。,RANGECorseCXSCSCXSCSCYGETW(Student.Sno):CX(SCX(SCX.Sno=95002SCX.Cno=CX.Cno)-SCY(SCY.Sno=Student.SnoSCY.Cno=CX.Cno),(11)集函數(shù)二、更新操作(知道就可以)修改插入刪除,2.5.2域關(guān)系演算語(yǔ)言QBE與MSFoxpro的RQBE沒有什么聯(lián)系。關(guān)系演算的另一種形式是域關(guān)系演算。域關(guān)系演算以元組變量的分量即域變量作為謂詞變?cè)幕緦?duì)象。QBE是QueryByExample(即通過例子進(jìn)行查詢)的簡(jiǎn)稱,其最突出的特點(diǎn)是它的操作方式。它是一種高度非過程化的基于屏幕表格的查詢語(yǔ)言,用戶通過終端屏幕編輯程序以填寫表格的方式構(gòu)造查詢要求,而查詢結(jié)果也是以表格形式顯示,因此非常直觀,易學(xué)易用。,QBE中用示例元素來表示查詢結(jié)果可能的例子,示例元素實(shí)質(zhì)上就是域變量。QBE操作框架如書圖2-9所示。檢索操作(通過書上給出的例子適當(dāng)理解)例1求信息系全體學(xué)生的姓名,例2查詢?nèi)w學(xué)生的全部數(shù)據(jù)。,例4查詢計(jì)算機(jī)系的年齡大于19歲的學(xué)生的學(xué)號(hào)。,方法一一行表示“與”,“與”的表示,方法二兩行表示“與”(使用相同的示例元素),“或”的表示。,例5查詢計(jì)算機(jī)科學(xué)系或年齡大于19歲的學(xué)生的學(xué)號(hào)。,連接的表示。(涉及參與連接的所有表)例7查詢選修1號(hào)課程的學(xué)生的姓名。,例8查詢未選修1號(hào)課程的學(xué)生的姓名。,自表連接的表示。例9查詢有兩個(gè)人以上選修的課程號(hào)。,二.更新操作(略),作業(yè),本章習(xí)題5。(P80),

注意事項(xiàng)

本文(數(shù)據(jù)庫(kù)原理-2關(guān)系數(shù)據(jù)庫(kù).ppt)為本站會(huì)員(za****8)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!