




已閱讀5頁,還剩35頁未讀, 繼續免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
2019年9月11日星期三,數據庫技術與應用-2,1,關系數據模型,1.關系模型 2.關系運算,2019年9月11日星期三,數據庫技術與應用-2,2,數據庫管理系統不僅管理數據本身,而且管理對數據的描述。數據庫中的數據是有結構的,所謂結構是指通過數據模型來反映出事物及其之間的聯系。,2019年9月11日星期三,數據庫技術與應用-2,3,數據模型的組成 數據模型:是一組嚴格定義的概念集合,這些概念精確地描述了系統的數據結構、數據操作和數據完整性約束條件。 數據模型的三要素: 數據結構:是數據模型最基本的部分,它將確定數據庫的邏輯結構,屬于對系統靜態特性的描述。 數據操作:提供對數據庫的操縱手段,主要有檢索和更新兩大類操作。屬于對系統動態特性的描述。 數據的約束條件:是對數據庫有效狀態的約束。,2019年9月11日星期三,數據庫技術與應用-2,4,常用的結構數據模型,層次模型:層次模型用“樹結構”來表示數據之間的聯系; 網狀模型:網狀模型是用“圖結構”來表示數據之間的聯系; 關系模型:關系模型是用“二維表”來表示數據之間的聯系。,2019年9月11日星期三,數據庫技術與應用-2,5,一、層次模型,層次模型用一棵“有向樹 ”的數據結構來表示各類實體以及實體間的聯系。 在樹中,每個結點表示一個記錄類型,結點間的連線(或邊)表示記錄類型間的關系,每個記錄類型可包含若干個字段,記錄類型描述的是實體,字段描述實體的屬性,各個記錄類型及其字段都必須命名。如果要存取某一記錄型的記錄,可以從根結點起,按照有向樹層次向下查找。 層次模型中的幾個術語 根結點,雙親結點,兄弟結點,葉結點,2019年9月11日星期三,數據庫技術與應用-2,6,層次模型的特征 (1)有且僅有一個結點沒有雙親,該結點就是根結點; (2)根以外的其他結點有且僅有一個雙親結點,這就使得層次數據庫系統只能直接處理一對多的實體關系; (3)任何一個給定的記錄值只有按其路徑查看時,才能顯出它的全部意義,沒有一個子女記錄值能夠脫離雙親記錄值而獨立存在。,層次數據庫為TS,它具有四個記錄型,分別是: (a).記錄型D(系)是根結點,由字段D#(系編號)、DN(系名)、DL(系地點)組成,它有兩個孩子結點,:R和S; (b).記錄型R(教研室)是D的孩子結點,同時又是T的雙親結點,它由R#(教研室編號)、RN(教研室名)兩個字段組成; (c).記錄型S(學生)由S#(學號)、SN(姓名)、SS(成績)三個字段組成; (d).記錄型T(教師)由T#(職工號)、TN(姓名)、TD(研究方向)三個字段組成。 S與T是葉結點,它們沒有子女結點,由D到R,R到T,由D到S均是一對多的關系。,對應上述數據模型的一個值: 該值是D02系(計算機系)記錄值及其所有后代記錄值組成的一棵樹,D02系有3個教研室子記錄值:R01、R02、R03和3個學生記錄值:S63871、S63874、S63876,教研室R01有3個教師記錄值:T2101、T17090、T3501.,2019年9月11日星期三,數據庫技術與應用-2,7,層次模型中多對多聯系的表示 采用分解的方法,即將多對多的聯系分解成一對多的聯系,使用多個一對多聯系來表示一個多對多聯系。分解的方法主要有冗余結點法和虛擬結點法。,層次模型的數據操作和完整性約束條件 1、在進行插入記錄值操作時,如果沒有指明相應的雙親記錄值,則不能插入子女記錄值。 2、進行刪除記錄操作時,如果刪除雙新記錄值,則相應的子女結點值也同時被刪除。 3、進行修改記錄操作時,應修改所有相應記錄,以保證數據的一致性。,2019年9月11日星期三,數據庫技術與應用-2,8,層次模型的優點: (1)比較簡單,只需很少幾條命令就能操縱數據庫,比較容易使用。 (2)結構清晰,結點間聯系簡單,只要知道每個結點的雙親結點,就可知道整個模型結構。 (3)它提供了良好的數據完整性支持。 層次模型的缺點主要有: (1)不能直接表示兩個以上的實體型間的復雜的聯系和實體型間的多對多聯系,只能通過引入冗余數據或創建虛擬結點的方法來解決,易產生不一致性。 (2)對數據的插入和刪除的操作限制太多。 (3)查詢子女結點必須通過雙親結點。,2019年9月11日星期三,數據庫技術與應用-2,9,二、網狀模型,網狀模型取消了層次模型的兩個限制,兩個或兩個以上的結點都可以有多個雙親結點,則此時有向樹變成了有向圖,該有向圖描述了網狀模型。,網狀模型的特征 (1)有一個以上的結點沒有雙親 (2)至少有一個結點可以有多于一個雙親。 網狀模型中每個結點表示一個記錄型(實體),每個記錄型可包含若干個字段(實體的屬性),結點間的連線表示記錄類型(實體)間的父子關系。,2019年9月11日星期三,數據庫技術與應用-2,10,如:學生和課程間的關系。一個學生可以選修多門課程,一門課程可以由多個學生選修。如右圖所示,網狀模型的數據操縱與完整性約束 網狀模型的數據操縱主要包括查詢、插入、刪除和修改數據。 (1).插入數據時,允許插入尚未確定雙親結點值的子女結點值,如可增加一名尚未分配到某個教研室的新教師,也可增加一些剛來報到,還未分配宿舍的學生。 (2).刪除數據時,允許只刪除雙親結點值,如可刪除一個教研室,而該教研室所有教師的信息仍保留在數據庫中。 (3).修改數據時,可直接表示非樹形結構,而無需像層次模型那樣增加冗余結點,因此,修改操作時只需更新指定記錄即可。 它沒有像層次數據庫那樣有嚴格的完整性約束條件,只提供一定的完整性約束。,2019年9月11日星期三,數據庫技術與應用-2,11,網狀模型的優缺點 網狀模型的優點主要有: (1)能更為直接地描述客觀世界,可表示實體間的多種復雜聯系。 (2)具有良好的性能和存儲效率。 網狀模型的缺點主要有: (1)結構復雜,其DDL語言極其復雜。 (2)數據獨立性差,由于實體間的聯系本質上是通過存取路徑表示的,因此應用程序在訪問數據時要指定存取路徑。,2019年9月11日星期三,數據庫技術與應用-2,12,三、關系模型,在計算機數據管理的歷史上出現的二次飛躍,數據庫技術的出現 關系數據模型的誕生,2019年9月11日星期三,數據庫技術與應用-2,13,關系模型的基本概念,關系模型的數據結構是一個“二維表框架”組成的集合,每個二維表又可稱為關系,所以關系模型是“關系框架”的集合。 關系數據模型完整性約束 關系數據模型完整性約束主要包括三大類:實體完整性、參照完整性和用戶定義完整性。關系數據模型中的查詢、插入、刪除、修改數據等常用操作都要滿足這些條件。,2019年9月11日星期三,數據庫技術與應用-2,14,關系模型的優點主要有: 與非關系模型不同,它有較強的數學理論根據。 數據結構簡單、清晰,用戶易懂易用,不僅用關系描述實體,而且用關系描述實體間的聯系。 關系模型的存取路徑對用戶透明,從而具有更高的數據獨立性、更好的安全保密性,也簡化了程序員的工作和數據庫建立和開發的工作。 關系模型的缺點主要有: 由于存取路徑對用戶透明,查詢效率往往不如非關系模型,因此,為了提高性能,必須對用戶的查詢表示進行優化,增加了開發數據庫管理系統的負擔。,2019年9月11日星期三,數據庫技術與應用-2,15,1.1 關系模型,一、二維表 關系模型的用戶界面非常簡單,從用戶觀點來看,一個關系的邏輯結構就是一張二維表。關系在磁盤上以文件形式存儲,每個字段是表中的一列,每個記錄是表中的一行。這種用二維表的形式來表示實體和實體間聯系的數據模型稱為關系數據模型。,2019年9月11日星期三,數據庫技術與應用-2,16,二維表(續),2019年9月11日星期三,數據庫技術與應用-2,17,例如,教學數據庫中教師與課程的關系模型如圖所示,可得出的關系之間的聯系: 教師關系和授課關系有公共的屬性“教師號” 課程關系和授課關系有公共的屬性“課程號” 在建立關系模型時,只要把的所有的實體及其屬性用關系框架來表示,同時把實體之間的關系也用關系框架來表示,就可以得到一個關系模型。,2019年9月11日星期三,數據庫技術與應用-2,18,二、關系術語,關系:一個關系就是一張二維表。每個關系有一個關系名。在計算機里,一個關系可以存儲為一個文件。 元組:表中的行稱為元組。一行是一個元組,對應存儲文件中的一個記錄值。 屬性:表中的列稱為屬性。屬性具有型和值兩層含義:屬性的型指屬性名;屬性值指屬性具體的取值。每一列有一個屬性名。屬性值相當于記錄中的字段值。 同一關系中的屬性名不能相同。,又稱表,又稱行或記錄,又稱列,2019年9月11日星期三,數據庫技術與應用-2,19,關系術語(續),域:屬性的取值范圍,即不同元組對同一個屬性的取值所限定的范圍。如:整數,正數,男,女等都是域。 關鍵字:屬性或屬性組合,其值能夠唯一地標識一個元組。 關系模式:對關系的描述稱為關系模式,其格式為:關系名(屬性名1,屬性名2,屬性名n)。其實就是二維表的表頭那一行,又稱表的框架或記錄類型。 在關系模型中,實體是用關系來表示的,如: 學生(學號,姓名,性別,年齡,系別) 課程(課程號,課程名,課時) 實體間的關系也是用關系來表示的,如: 學生和課程之間的關系 選課關系(學號,課程號,成績) 元數:關系模式中屬性的數目。如學生關系是一個5元關系。,2019年9月11日星期三,數據庫技術與應用-2,20,2019年9月11日星期三,數據庫技術與應用-2,21,三、從集合論的觀點來定義關系,將關系定義為元組的集合;關系模式是命名的屬性集合;元組是屬性值的集合。 一個具體的關系模型是若干個關系模式的集合。,2019年9月11日星期三,數據庫技術與應用-2,22,四、數據庫中基本關系的性質 同一屬性的數據具有同質性。即同一列中的分量是同一類型的數據,它們來自同一個域。 如,學生選課表的結構:選課(學號,課號,成績) 同一關系的屬性名具有不能重復性。即在同一關系中不同屬性的數據可出自同一個域,但不同的屬性要給予不同的屬性名。 學生成績(學號,成績,成績) 學生成績(學號,成績1,成績2) 例如,有如下表中關系,職業與兼職是兩個不同的屬性,但它們取自同一個域職業教師,工人,輔導員。,2019年9月11日星期三,數據庫技術與應用-2,23,數據庫中基本關系的性質(續),關系中的列位置具有順序無關性 即列的順序可以任意交換。交換時,應連同屬性名一起交換,否則將得到不同的關系。 例如:關系T1作如下交換時,無任何影響,如右表所示:,而作如下交換時,不交換屬性名,只交換屬性列中的值,則得到不同的關系,如下表:,2019年9月11日星期三,數據庫技術與應用-2,24,關系中的元組位置具有順序無關性,即關系元組的順序可以任意交換。 根據關系的這個性質,可以改變元組的順序使其具有某種排序,然后按照順序查詢數據,可以提高查詢速度。 關系具有元組無冗余性,即關系中的任意兩個元組不能完全相同。 關系中每一分量必須是不可分的數據項,或者說所有屬性值都是原子的,即是一個確定的值,而不是值的集合。屬性值可以為空值,表示“未知”或“不可使用”,即不可“表中有表”。,2019年9月11日星期三,數據庫技術與應用-2,25,1.2 關系模型的特點,關系必須規范化 規范化是指關系模型中的每一個關系模式都必須滿足一定的要求。關于規范化的層次在第三章討論。但對關系最基本的要求是每個屬性值必須是不可分割的數據單元。,即表中不能再包含表,例如,在表下中,籍貫含有省、市縣兩項,出現了“表中有表”的現象,則為非規范化關系,而把籍貫分成省、市縣兩列,將其規范化。,2019年9月11日星期三,數據庫技術與應用-2,26,關系模型的特點(續),概念模型單一 在關系模型中,無論實體本身還是實體間的聯系均用關系表示。在關系模型中對多對多聯系表示得也比較簡單。,2019年9月11日星期三,數據庫技術與應用-2,27,例:一個學生可以選修多門課程,一門課程由多個學生選修。 學生和課程間存在多對多的聯系。 可以設計以下三個關系模式: 學生(學號,姓名,性別,政治面貌,所在系,民族,現住址) 課程(課程號,課程名稱,學分,課時,選修課) 選修(學號,課程號,成績),2019年9月11日星期三,數據庫技術與應用-2,28,關系模型的特點(續),集合操作 在關系模型中,操作的對象和結果都是元組的集合,即關系。,查詢操作結果是原關系的一個子集,其本身也是一張二維表,2019年9月11日星期三,數據庫技術與應用-2,29,1.3 關系運算,從集合論的觀點來定義關系,關系是一個元數為K的元組的集合。表明這個關系有若干個元組,每個元組有K個屬性值。 關系的基本運算有兩類:傳統的集合運算和專門的關系運算,2019年9月11日星期三,數據庫技術與應用-2,30,一、傳統的集合運算,并(Union)設有兩個關系R和S,它們具有相同的結構。R和S的并是由屬于R或屬于S的元組組成的集合,運算符為。,注意:是將兩個關系中的所有元組構成新的關系,并運算的結果中必須消除重復值。,例:設每個班有一個學生關系R1,R2,R3,則全校學生關系T是: T= R1 R2 R3 ,2019年9月11日星期三,數據庫技術與應用-2,31,傳統的集合運算(續),差(Difference)設有兩個關系R和S,它們具有相同的結構。R和S的差是由屬于R但不屬于S的元組組成的集合。運算符為。通過差運算,可實現關系數據庫記錄的刪除。 例:設有參加計算機小組的學生關系,參加橋牌小組的學生關系。求參加了計算機小組但沒有參加橋牌小組的學生。結果放在關系1中。 T1=R-S,2019年9月11日星期三,數據庫技術與應用-2,32,傳統的集合運算(續),交(Intersection)設有兩個關系R和S,它們具有相同的結構。R和S的交是由既屬于R又屬于S的元組組成的集合,運算符為。交運算的結果是R和S的共同元組。 例:設有參加計算機小組的學生關系,參加橋牌小組的學生關系。求既參加了計算機小組又參加橋牌小組的學生。結果放在關系2中。 2 =R S 也可以寫成:2 =R-(R S) 關系的交可以用關系的差來表示。即RS= R-(R S),2019年9月11日星期三,數據庫技術與應用-2,33,二、專門的關系運算,選擇運算( Selection ) 是按照給定條件從指定的關系中挑選出滿足條件的元組構成新的關系,其關系模式不變,但其中元組的數目小于等于原來的關系中元組的個數,它是原關系的一個子集。這是從行的角度進行的運算,即水平方向抽取元組。,例:設有關系圖書如表所示。現從該圖書關系中找出高教出版社出版的,單價不超過20元的書目。,2019年9月11日星期三,數據庫技術與應用-2,34,專門的關系運算(續),投影(projection) 是從指定的關系中挑選出某些屬性構成新的關系,其關系模式所包含的屬性個數往往比原關系少,或者屬性的排列順序不同。投影操作是從列的角度進行的運算,相當于對關系進行垂直分解。投影的結果將取消由于取消了某些列而產生的重復元組。 例:設有讀者關系,讀者(借書證號,姓名,性別,單位,職稱,地址)。按照單位在前,姓名在后的次序列出讀者名單。,此運算結果包括元組數目不變,但減少了列的數目,同時改變了列的顯示順序。,2019年9月11日星期三,數據庫技術與應用-2,35,例:從圖書關系中找出藏書所涉及到的所有出版社。,出現重復分組的情況: 高教出版社 郵電出版社 高教出版社 科學出版社 科學出版社,無重復分組的情況: 高教出版社 郵電出版社 科學出版社,2019年9月11日星期三,數據庫技術與應用-2,36,專門的關系運算(續),聯接運算(join) 聯接是將兩個和多個關系模式通過公共的屬性名拼接成一個更寬的關系模式,生成的新關系包含滿足聯接條件的元組。運算過程是通過聯接條件來控制的,把滿足條件的各關系的所有元組,按照一切可能組合成新的關系。聯接是對關系的結合。 例:設有三個關系:學生(學號,姓名,所在系,性別,現住址);課程(課程號,課程名,學分);選修(學號,課程號,成績)。若想查詢成績90分以上的學
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030中國智能駕駛行業需求趨勢及應用前景廣闊報告
- 2025至2030中國無粘性撓性覆銅板行業發展趨勢分析與未來投資戰略咨詢研究報告
- 夏日海灘寫景美麗的海灘景色12篇
- 2025至2030中國搬運機器人行業發展前景預測與投資建議報告
- 2025至2030中國房地產營銷自動化軟件行業發展趨勢分析與未來投資戰略咨詢研究報告
- 2025至2030中國快餐店嗎行業發展趨勢分析與未來投資戰略咨詢研究報告
- 2025至2030中國微型互感器市場創新現狀與競爭力優勢分析報告
- 2025至2030中國布洛芬緩釋片行業市場發展分析及投資前景與投資策略報告
- 稅務局課件征求意見
- 魚的記憶只有七秒1200字8篇范文
- 2025至2030年中國核電材料行業市場現狀分析及發展戰略研判報告
- 2025至2030年中國高鎳三元材料產業發展動態及投資方向分析報告
- DB13T 1320.10-2010 中藥材種子質量標準 第10部分:防風
- (2025春新版本)人教版七年級生物下冊全冊教案
- 2025年畢節市大方富民村鎮銀行招聘題庫帶答案分析
- (2025)國家公務員考試時事政治必考試題庫與答案
- 醫院殘疾評定管理制度
- 2025影視拍攝場地布置合同協議書
- 全國二卷-2025年高考語文真題作文深度點評與分析
- 《運動處方》課件-肥胖癥人群運動處方
- 勞動合同(模版)4篇
評論
0/150
提交評論