




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、第二章 關(guān)系數(shù)據(jù)模型數(shù)據(jù)庫原理、方法與應(yīng)用編輯ppt 關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)并、交、差和笛卡爾積四種傳統(tǒng)的集合運算選擇、投影、連接三種專門的關(guān)系運算關(guān)系的實體完整性規(guī)則和參照完整性規(guī)則關(guān)系系統(tǒng)的定義和分類 本章主要講述了關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操縱和完整性約束以及關(guān)系系統(tǒng)的定義和分類。通過本章的學(xué)習(xí),同學(xué)們應(yīng)該掌握以下內(nèi)容:本章重難點:編輯ppt第二章 關(guān)系數(shù)據(jù)模型2.1 關(guān)系(Relation)2.2 碼(Key)2.3 關(guān)系數(shù)據(jù)庫的聯(lián)系2.4 關(guān)系完整性規(guī)則2.5 數(shù)據(jù)字典與系統(tǒng)目錄2.6 關(guān)系代數(shù)2.7 關(guān)系運算的組合2.8 用關(guān)系代數(shù)表示查詢編輯ppt2.1 關(guān)系(Relation)1)關(guān)
2、系在關(guān)系模型中,數(shù)據(jù)是以二維表的形式存在的,這個行與列交叉的二維表就叫做關(guān)系。每個關(guān)系有一個關(guān)系名。在計算機里,一個關(guān)系可以存儲為一個文件,如FoxPro中的.dbf文件。2)元組表中的行稱為元組。一行為一個元組,對應(yīng)存儲文件中的一個記錄值。編輯ppt3)屬性表中的列稱為屬性,每一列有一個屬性名。屬性值相當(dāng)于記錄中的數(shù)據(jù)項或者字段值。4)屬性域?qū)傩缘娜≈捣秶?,即不同元組對同一個屬性的值所限定的范圍。例如,邏輯型屬性只能從邏輯值真(如.T.)或邏輯假(如.F.)兩個值中取值。編輯ppt5)關(guān)系模式對關(guān)系的描述稱為關(guān)系模式,格式為:關(guān)系名(屬性名1,屬性名2,屬性名n)例如:學(xué)生關(guān)系可表示為:學(xué)生
3、(學(xué)號,姓名,性別,出生年月,系編號)一個關(guān)系數(shù)據(jù)庫中通常包含一組關(guān)系,例如,學(xué)校數(shù)據(jù)庫中有系、學(xué)生、課程、教師、教室等多個關(guān)系。編輯ppt舉例圖2.1 學(xué)生關(guān)系屬性名屬性值編輯ppt表2.1 在關(guān)系數(shù)據(jù)模型術(shù)語之間的對照表一個表要成為關(guān)系,必須具有下列性質(zhì):列是同質(zhì)的,即每一列中所有數(shù)據(jù)都是同一類型,來自同一個域每一列都有惟一的列名;列在表中的順序無關(guān)緊要,即列的次序可以任意交換;表中任意兩行不能完全相同;行在表中的順序也無關(guān)緊要,即行的次序可以任意交換;每一個行與列的交叉點上必須是單值的(不能有一組值)。編輯ppt屬性的數(shù)據(jù)類型絕大多數(shù)數(shù)據(jù)庫系統(tǒng)都至少支持的幾種數(shù)據(jù)類型:數(shù)值:可以進行算術(shù)
4、運算的數(shù)據(jù)。字符:字符型數(shù)據(jù)也叫做字符串,它是由任何字符或符號組成的文字串。例如姓名、地址、專業(yè)都是字符型屬性。日期:日期型屬性是按照特定格式存儲的日期數(shù)據(jù),可以對日期型數(shù)據(jù)進行特殊的數(shù)學(xué)運算。例如一個日期減去另一個日期就可以求出兩個日期之間的天數(shù)。邏輯:邏輯型數(shù)據(jù)只能有真(T)或假(F)兩個值。例如,婚否屬性只有兩種狀態(tài),就可以定義成邏輯型。編輯ppt2.2 碼(Key)碼(關(guān)鍵字)碼:屬性或?qū)傩越M合,其值能夠惟一地標(biāo)識一個元組。碼細分為:超碼、候選碼和主碼。超碼能夠惟一標(biāo)識一個元組的屬性或?qū)傩越M,稱為超碼。候選碼候選碼是最小超碼,它的任意真子集都不能成為超碼。主碼在一個關(guān)系中可能有多個候選
5、碼,從中選擇一個用為主碼。主碼在關(guān)系中用來作為插入、刪除、檢索元組的操作變量。編輯ppt 超碼、候選碼和主碼三者之間是一種包含關(guān)系,主碼是候選碼的子集,候選碼又是超碼的子集,如圖2.4所示。編輯ppt舉例圖2.3 職工關(guān)系的主碼圖2.2 學(xué)號是候選碼編輯ppt2.3 關(guān)系數(shù)據(jù)庫的聯(lián)系實現(xiàn)數(shù)據(jù)之間的聯(lián)系的方法在關(guān)系模型中,利用“在一個關(guān)系中包含另一個關(guān)系的屬性”的方法來實現(xiàn)數(shù)據(jù)之間的聯(lián)系。外碼是關(guān)系數(shù)據(jù)庫實現(xiàn)數(shù)據(jù)之間聯(lián)系的方法外碼設(shè)F是關(guān)系R的一個或一組屬性,但不是關(guān)系R的碼。如果F與關(guān)系S的主碼Ks相對應(yīng),則稱F是基本關(guān)系R的外碼關(guān)系R稱為參照關(guān)系關(guān)系S稱為被參照關(guān)系或目標(biāo)關(guān)系編輯ppt舉例1
6、關(guān)系數(shù)據(jù)庫由一組關(guān)系構(gòu)成,關(guān)系之間的邏輯聯(lián)系,通過表與表之間的公共屬性(外碼)實現(xiàn)的?!跋稻幪枴睂崿F(xiàn)聯(lián)系編輯ppt舉例2編輯ppt舉例3例 學(xué)生關(guān)系、專業(yè)關(guān)系學(xué)生(學(xué)號,姓名,性別,專業(yè)號,年齡) 專業(yè)(專業(yè)號,專業(yè)名)主碼主碼編輯ppt練習(xí)一關(guān)系模式:購買情況(顧客號,產(chǎn)品號,購買時間,購買數(shù)量),若允許一個顧客在不同時間對同一個產(chǎn)品購買多次,則此關(guān)系模式的主碼是 _。 A顧客號 B產(chǎn)品號 C(顧客號,產(chǎn)品號) D(顧客號、產(chǎn)品號、購買時間)編輯ppt練習(xí)二 已知系(系編號,系名稱,系主任,電話,地點)和學(xué)生(學(xué)號,姓名,性別,入學(xué)日期,專業(yè),系編號)兩個關(guān)系,系關(guān)系的主碼是_,系關(guān)系的外碼
7、是_,學(xué)生關(guān)系的主碼是_,學(xué)生關(guān)系的外碼是_。答案 系編號 沒有 學(xué)號 系編號 編輯ppt2.4 關(guān)系完整性規(guī)則關(guān)系完整性關(guān)系完整性是為保證數(shù)據(jù)庫中數(shù)據(jù)的正確性和相容性,對關(guān)系模型提出的某種約束條件或規(guī)則。數(shù)據(jù)完整性由關(guān)系完整性規(guī)則來維護,關(guān)系完整性規(guī)則通常包括實體完整性和參照完整性,是關(guān)系模型必須滿足的完整性約束條件。編輯ppt實體完整性實體:現(xiàn)實世界中客觀存在并可以被區(qū)別的事物。比如“一個學(xué)生”、“一本書”、“一門課”等等。值得強調(diào)的是這里所說的“事物”不僅僅是看得見摸得著的“東西”,它也可以是虛擬的,不如說“老師與學(xué)校的關(guān)系”。實體完整性-主碼非空主碼的值必須是惟一的和確定的,才能有效地
8、標(biāo)識一個元組。主碼不能取空值(NULL)??罩挡皇?,也不是空字符串,而是沒有值??罩凳遣淮_定的值,所以,主碼非空是關(guān)系的一個完整性約束條件。編輯ppt參照完整性-不含無效外碼參照完整性是確保數(shù)據(jù)庫中不含有無效外碼。參照完整性定義是:外碼必須是被參照關(guān)系主碼的有效值或是“空值”。如果外碼存在一個值,則這個值必須是被參照關(guān)系中主碼的有效值。換句話說,外碼可以沒有值,但不允許是一個無效值。編輯ppt參照完整性實例編輯ppt練習(xí)三外碼的作用是_。 A. 不限制外碼列的取值范圍 B. 限制引用列的取值范圍 C. 限制所引用的列的取值范圍在外碼列的已有值范圍內(nèi) D. 限制外碼列的取值范圍在所引用的列的已
9、有值范圍內(nèi) 定義外碼的用處主要是_。 A. 提高查詢效率 B. 維護數(shù)據(jù)的實體完整性 C. 增加數(shù)據(jù)的安全性 D. 維護數(shù)據(jù)的參照完整性 編輯ppt2.5 數(shù)據(jù)字典與系統(tǒng)目錄數(shù)據(jù)字典包括數(shù)據(jù)庫中表的結(jié)構(gòu)信息、索引、用戶、完整性約束、安全性約束。系統(tǒng)目錄 系統(tǒng)目錄類似于數(shù)據(jù)字典,它比數(shù)據(jù)字典更加詳細地描述數(shù)據(jù)庫中表的名稱、每個表中列數(shù)、每一列的列名、列的數(shù)據(jù)類型、列的寬度、表的創(chuàng)建者、建表的時間、索引文件名稱、索引的創(chuàng)建者、授權(quán)的用戶、存取的許可權(quán)等信息。數(shù)據(jù)字典和系統(tǒng)目錄是同義詞。系統(tǒng)目錄實際上是為系統(tǒng)建立的數(shù)據(jù)庫,系統(tǒng)目錄也是用表來存儲的。因此,對系統(tǒng)目錄的操作方法與其他表的操作方法相同。編
10、輯ppt實例編輯ppt2.6 關(guān)系代數(shù)關(guān)系代數(shù)關(guān)系代數(shù)是施加于關(guān)系上的一組集合代數(shù)運算,每個運算都以一個或多個關(guān)系作為運算對象,并生成另外一個關(guān)系作為該關(guān)系運算的結(jié)果。運算的三要素運算對象(一元運算,二元運算)運算符運算結(jié)果編輯ppt關(guān)系運算編輯ppt關(guān)系代數(shù)運算符集合運算符-并差交笛卡爾積比較運算符= != 大于大于等于小于小于等于等于不等于運算符含義運算符含義關(guān)系代數(shù)運算符 編輯ppt關(guān)系代數(shù)運算符(續(xù))專門的關(guān)系運算符 選擇投影連接除邏輯運算符與或非運算符含義運算符含義關(guān)系代數(shù)運算符(續(xù)) 編輯ppt關(guān)系代數(shù)的運算關(guān)系代數(shù)的基本運算:選擇、投影、并、差、積。其它的主要運算:交、自然連接、
11、除運算。編輯ppt1.選擇(Select)選擇運算的含義從關(guān)系中選擇某些滿足條件的元組構(gòu)成一個新的關(guān)系。表示方法(R),R是一個關(guān)系,條件表達式中可使用比較運算符和邏輯運算符構(gòu)成復(fù)雜的條件表達式。編輯ppt選擇運算實例例如,要從學(xué)生關(guān)系中選擇的元組寫成: 性別=女(學(xué)生)編輯ppt實例(續(xù))有一保險單關(guān)系:保險單(保險單號,投保人姓名,被保險人姓名,險種,保險金額,保險費)例2.1 要找出險種為“意外傷害”,并且保險費超過2000元的客戶信息 關(guān)系代數(shù)表達式: 險種=意外傷害保險費=2000(保險單)例2.2 找出投保人和被保險人是同一個人的客戶。 關(guān)系代數(shù)表達式: 投保人姓名=被投保人姓名(
12、保險單)編輯ppt2.投影(project)投影運算的含義從關(guān)系中選擇某些屬性列構(gòu)成一個新的關(guān)系。投影的結(jié)果將消除重復(fù)元組。表示方法 A,B(R),其中A和B是屬性名,R是一個關(guān)系。投影之后不僅取消了原關(guān)系中的某些列,而且還可能取消某些元組(避免重復(fù)行)編輯ppt投影運算實例例2.3 列出學(xué)生的姓名和專業(yè),其投影運算表達式應(yīng)寫成: 姓名,專業(yè)(學(xué)生)或?qū)懗桑?2,4(學(xué)生)編輯ppt3.并(union)并運算的含義設(shè)關(guān)系R和S的屬性數(shù)目(n列)相同,且相應(yīng)的屬性取自同一個域,則關(guān)系R與S的并是由屬于R或?qū)儆赟的元組組成的新關(guān)系。其結(jié)果是具有n個屬性的關(guān)系,且消除重復(fù)元組。表示方法RSABCa1
13、b1c1a1b2c2a2b2c1ABCa1b1c1a1b2c2a1b3c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSRS 編輯ppt并運算實例例2.4 假設(shè)如圖2.13所示,有學(xué)生和新生關(guān)系如下學(xué)生(學(xué)號,姓名,性別),新生(學(xué)號,姓名,性別)編輯ppt4.差(difference)差運算的含義設(shè)關(guān)系R和S具有相同數(shù)目的屬性(n列),且相應(yīng)的屬性取自同一個域,則關(guān)系R與S的差是由屬于R而不屬于S的元組構(gòu)成的新關(guān)系。表示方法R-S編輯ppt差運算實例例2.5 假設(shè)如圖2.14所示,有學(xué)生和畢業(yè)生關(guān)系如下: 學(xué)生(學(xué)號,姓名) 畢業(yè)生(學(xué)號,姓名)編輯ppt5.笛卡兒積( Cart
14、esian Product)關(guān)系R與關(guān)系S的笛卡兒積記成:RS若R有m個屬性,S有n個屬性,則RS是一個具有(m+n)個屬性的關(guān)系,且RS元組的前m列是R的一個元組,后n列是S的一個元組。如果R有i個元組,S有j個元組,則RS有(ij)個元組。編輯ppt編輯ppt笛卡兒積實例編輯ppt笛卡兒積執(zhí)行過程笛卡兒積的執(zhí)行過程首先是學(xué)生關(guān)系的第一個元組與必修課的第一個元組組合,生成學(xué)習(xí)關(guān)系的第一個元組;接著是學(xué)生關(guān)系的第一個元組與必修課的第二個元組組合,生成學(xué)習(xí)關(guān)系的第二個元組;然后,學(xué)生關(guān)系的第一個元組與必修課的第三個元組組合,生成學(xué)習(xí)關(guān)系的第三個元組;依此類推,學(xué)生關(guān)系的第二個元組與必修課的3個元
15、組組合,生成學(xué)習(xí)關(guān)系的后面3個元組。編輯ppt6.交(intersect)R和S具有相同數(shù)目屬性(n列)相應(yīng)的屬性取自同一個域RS仍為具有n個屬性的關(guān)系,由既屬于R又屬于S的元組組成的新關(guān)系。RS=R-(R-S)或RS=S-(S-R)編輯ppt交運算實例編輯ppt7.連接(join)連接是二元關(guān)系運算,是對笛卡兒積的結(jié)果進行選擇的運算,用符號 表示。連接運算就是從兩個關(guān)系的笛卡爾積中選取屬性間滿足一定條件的元組。關(guān)系R與S的連接運算表示為 = (RS)連接條件的一般形式 邏輯算符邏輯算符邏輯算符邏輯運算符:AND(), OR(), NOT()條件一般表示為:AiBj R S編輯ppt 連接(續(xù)
16、) 兩類常用連接運算等值連接(equijoin) 什么是等值連接為“”的連接運算稱為等值連接 即:連接條件是一個相等條件等值連接的含義從關(guān)系R與S的笛卡爾積中選取A、B屬性值相等的那些元組,即等值連接為: R SA=B R S編輯ppt 連接(續(xù)) 自然連接(Natural join) 自然連接是一種特殊的等值連接若等值連接的屬性都是公共屬性(或?qū)傩越M),且結(jié)果關(guān)系中消除重復(fù)的屬性列,則此等值連接稱為自然連接兩個關(guān)系中進行比較的分量必須是相同的屬性組在結(jié)果中把重復(fù)的屬性列去掉自然連接的含義R和S具有相同的屬性組B 記為:R S,可以省略連接條件編輯ppt連接(續(xù))一般的連接操作是從行的角度進行
17、運算。 自然連接還需要取消重復(fù)列,所以是同時從行和列的角度進行運算。自然連接的算法是先求笛卡兒積,再選擇,最后投影。 ABRS編輯ppt連接(續(xù))例5關(guān)系R和關(guān)系S 如下所示:編輯ppt連接(續(xù))一般連接 R S的結(jié)果如下: CE編輯ppt連接(續(xù)) 等值連接 R S 的結(jié)果如下:R.B=S.B 編輯ppt連接(續(xù)) 自然連接 R S的結(jié)果如下: 編輯ppt習(xí)題習(xí)題設(shè)關(guān)系R、S分別為表(a)和(b),(1)求連接條件為CC101, C104,C108,S2-C101,C104,S3-C101,C108則例中結(jié)果為S1,S2。象集屬性結(jié)果屬性編輯ppt除(續(xù))編輯ppt2.7 關(guān)系運算的組合及用
18、關(guān)系代數(shù)表示查詢例16查詢所有女同學(xué)的信息。關(guān)系代數(shù)表達式是:關(guān)系代數(shù)中基本表達式是數(shù)據(jù)庫中的一個表或一個常量關(guān)系?;颈磉_式與關(guān)系運算符的有效組合稱為關(guān)系代數(shù)表達式。系編號系主任地址102齊麗A301103白向陽B209學(xué)號姓名專業(yè)系編號99202何海洋數(shù)學(xué)10299212田平平數(shù)學(xué)10299303康麗華法律10399310白緯強法律103有學(xué)生關(guān)系和系關(guān)系如下:學(xué)生關(guān)系系關(guān)系性別女(學(xué)生)例17查詢所有學(xué)生的姓名和專業(yè)。關(guān)系代數(shù)表達式是:姓名,專業(yè)(學(xué)生)例18在學(xué)生關(guān)系中插入一個元組。關(guān)系代數(shù)表達式是:學(xué)生992311,王光明,男,會計學(xué)例19列出所有女同學(xué)的姓名和專業(yè)。關(guān)系代數(shù)表達式是
19、:姓名,專業(yè)(學(xué)生)例20列出所有女同學(xué)的姓名和所在系的地址。由于關(guān)系代數(shù)運算的對象和結(jié)果都是關(guān)系,可以將一個關(guān)系代數(shù)表達式運算的結(jié)果作為另一個關(guān)系代數(shù)表達式運算的對象。所以,關(guān)系代數(shù)表達式有限次復(fù)合形式的式子也是關(guān)系代數(shù)表達式。關(guān)系代數(shù)表達式是:姓名,地址(性別女(學(xué)生系)編輯ppt習(xí)題1.設(shè)有如下圖所示的關(guān)系R、W和D,計算:(1)R1= Y,T(R) (2)R2= p5T=e(R)(3)R3=R W(4)R4= 2,1,6(3=5(RD) ) (5)R5=RD結(jié)果編輯ppt習(xí)題2.設(shè)有三個關(guān)系S(學(xué)號,姓名,年齡,性別,籍貫),C(課程號,課程名,老師姓名,辦公室),SC(學(xué)號,課程號,成績) 。將下列關(guān)系代數(shù)表達式用漢語表示出來。(1) 2,6,7(籍貫=上海(S SC) (2) 2,9,8(S SC
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 物業(yè)管理職業(yè)病預(yù)防措施
- 2025屆高三生物備課組教學(xué)計劃
- 二年級課外閱讀閱讀習(xí)慣養(yǎng)成計劃
- 三年級上冊綜合實踐學(xué)生發(fā)展計劃
- 中國室內(nèi)免漆門項目投資可行性研究報告
- 電商物流協(xié)調(diào)全年計劃及月度執(zhí)行計劃
- 中國壓克力椅行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告(2024-2030)
- 小學(xué)數(shù)學(xué)組數(shù)學(xué)競賽輔導(dǎo)計劃
- 校園建設(shè)安全文明施工組織計劃
- 七年級上冊英語教材二次開發(fā)計劃
- 如何進行高質(zhì)量的護理查房
- 特征值估計技術(shù)-洞察分析
- Unit3 Weather B let's learn(說課稿)-2023-2024學(xué)年人教PEP版英語四年級下冊
- 2024年新濟南版七年級上冊生物全冊知識點
- 桶裝飲用水生產(chǎn)項目可行性研究報告
- 肥胖相關(guān)性腎病臨床病理及治療新進展-課件
- 裝修工程投標(biāo)用技術(shù)標(biāo)范文
- 港科金融碩士面試
- 《電力安全工作規(guī)程DLT408-2023》知識培訓(xùn)
- 建筑工程危險源臺賬
- 高級考評員職業(yè)技能鑒定考試題庫(含答案)
評論
0/150
提交評論