版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
AnIntroductiontoDatabaseSystems中國人民大學(xué)信息學(xué)院原版華中科技大學(xué)計算機(jī)學(xué)院吳海修改版SchoolofComputerScienceandTechnology,HUST
2016數(shù)據(jù)庫系統(tǒng)概論教材及參考書(1)教材王珊,薩師煊:數(shù)據(jù)庫系統(tǒng)概論(第五版)
高等教育出版社,2014.9參考書數(shù)據(jù)庫系統(tǒng)概念.Abraham,Silberschatz等著,楊冬青,唐世渭等譯,機(jī)械工業(yè)出版社,任何一個版本其它數(shù)據(jù)庫系統(tǒng)原理教程等教材及參考書(2)上機(jī)軟件SQLServer2008/2012/2014/2***Oracle10g/11g/12c/*軟件安裝過程中,可能出現(xiàn)一系列問題,請注意旁邊同時保持一臺能夠上網(wǎng)查詢的機(jī)器*/學(xué)習(xí)方式課堂教學(xué)
(啟發(fā)式、討論式,考勤做為平時成績之一部分)讀書
(預(yù)習(xí)、復(fù)習(xí))實(shí)驗
(綜合練習(xí),課程設(shè)計)成績評定平時成績(書面作業(yè)、上機(jī)練習(xí)、考勤、綜合練習(xí))期末考試總評=平時成績*0.2+期末考試*0.8課程目標(biāo)了解,并結(jié)合關(guān)系型數(shù)據(jù)庫系統(tǒng)深入理解數(shù)據(jù)庫系統(tǒng)的基本概念,原理和方法。掌握關(guān)系數(shù)據(jù)模型及關(guān)系數(shù)據(jù)語言,能熟練應(yīng)用SQL語言表達(dá)各種數(shù)據(jù)操作。掌握E-R模型的概念和方法,關(guān)系數(shù)據(jù)庫規(guī)范化理論和數(shù)據(jù)庫設(shè)計方法,通過上機(jī)實(shí)習(xí)的訓(xùn)練,初步具備進(jìn)行數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)的能力。了解數(shù)據(jù)庫系統(tǒng)的查詢優(yōu)化、恢復(fù)、并發(fā)控制等技術(shù)以及最新的數(shù)據(jù)庫技術(shù)內(nèi)容安排(1)基礎(chǔ)篇第一章緒論第二章關(guān)系數(shù)據(jù)庫第三章關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL第四章數(shù)據(jù)庫安全性第五章數(shù)據(jù)庫完整性設(shè)計與應(yīng)用開發(fā)篇第六章關(guān)系數(shù)據(jù)理論第七章數(shù)據(jù)庫設(shè)計*第八章數(shù)據(jù)庫編程內(nèi)容安排(2)系統(tǒng)篇第九章關(guān)系查詢處理和查詢優(yōu)化第十章數(shù)據(jù)庫恢復(fù)技術(shù)第十一章并發(fā)控制*第十二章數(shù)據(jù)庫管理系統(tǒng)新技術(shù)篇*第十*章……第一至第十一章是本科專業(yè)的基本教程(書中有*號的部分除外),第十二至第十六章是高級教程數(shù)據(jù)庫系統(tǒng)概論AnIntroductiontoDatabaseSystems第一章緒論第一章緒論1.1數(shù)據(jù)庫系統(tǒng)概述1.2數(shù)據(jù)模型1.3數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.4數(shù)據(jù)庫系統(tǒng)的組成1.5小結(jié)數(shù)據(jù)庫簡介數(shù)據(jù)庫技術(shù)產(chǎn)生于六十年代末,是數(shù)據(jù)管理的最新技術(shù),是計算機(jī)科學(xué)的重要分支。數(shù)據(jù)庫技術(shù)是信息系統(tǒng)的核心和基礎(chǔ),它的出現(xiàn)極大地促進(jìn)了計算機(jī)應(yīng)用向各行各業(yè)的滲透。數(shù)據(jù)庫的建設(shè)規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成為衡量一個國家信息化程度的重要標(biāo)志。第一章緒論1.1數(shù)據(jù)庫系統(tǒng)概述
1.1.1四個基本概念
1.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展
1.1.3數(shù)據(jù)庫系統(tǒng)的特點(diǎn)
1.1.1四個基本概念數(shù)據(jù)(Data)數(shù)據(jù)庫(Database)數(shù)據(jù)庫管理系統(tǒng)(DBMS)數(shù)據(jù)庫系統(tǒng)(DBS)一、數(shù)據(jù)人類生存的世界是一個物質(zhì)的世界,同時也是一個信息的世界,描述現(xiàn)實(shí)世界信息最準(zhǔn)確的工具是數(shù)據(jù)。數(shù)據(jù)的定義描述事物的符號記錄數(shù)據(jù)的種類文本、圖形、圖像、音頻、視頻、學(xué)生的檔案記錄、貨物的運(yùn)輸情況等數(shù)據(jù)的特點(diǎn)數(shù)據(jù)與其語義是不可分的數(shù)據(jù)舉例數(shù)據(jù)的含義稱為數(shù)據(jù)的語義,數(shù)據(jù)與其語義是不可分的。例如93是一個數(shù)據(jù)語義1:學(xué)生某門課的成績語義2:某人的體重語義3:計算機(jī)系2003級學(xué)生人數(shù)語義4:請同學(xué)給出。。。數(shù)據(jù)舉例數(shù)據(jù)的含義(語義)就是信息,數(shù)據(jù)與其語義不可分(0005794,601,周濟(jì),1,1946.08.26,01)(工號,部門編號,姓名,性別,出生日期,民族)校辦公室男漢族數(shù)據(jù)舉例某檔案中的一條記錄(李明,男,197205,江蘇南京市,計算機(jī)系,1990)語義:學(xué)生姓名、性別、出生年月、籍貫、所在院系、入學(xué)時間解釋:李明是個大學(xué)生,1972年5月出生,江蘇南京市人,1990年考入計算機(jī)系請給出另一個解釋和語義數(shù)據(jù)與信息信息與數(shù)據(jù)的聯(lián)系數(shù)據(jù)是信息的符號表示,或稱載體信息是數(shù)據(jù)的內(nèi)涵,是數(shù)據(jù)的語義解釋數(shù)據(jù)是符號化的信息信息是語義化的數(shù)據(jù)例,一幅黑白圖象數(shù)據(jù)——黑白點(diǎn)陣信息——臉譜更多的思考:信息與知識知識“行動的能力”“可以輔助我們作出決策或采取行動的有很高價值的一種信息形態(tài)”可以很快地將信息從一個地方轉(zhuǎn)移到另一個地方,但將知識從一個人轉(zhuǎn)移給另一個人經(jīng)常是很困難和很慢的感知信息學(xué)習(xí)知識更多的思考:信息與知識信息管理信息管理通過收集、處理、濃縮信息以達(dá)到有效的管理知識管理知識管理的焦點(diǎn)是通過信息的收集、存儲、發(fā)布、重用等獲得人的交流與知識共享達(dá)到知識的創(chuàng)新目的知識管理是一個過程,個人通過這一過程學(xué)習(xí)新知識和獲得新經(jīng)驗,并將這些新知識和新經(jīng)驗反應(yīng)出來,進(jìn)行共享,以用來促進(jìn)培養(yǎng)、增強(qiáng)個人的知識和機(jī)構(gòu)組織的價值知識管理應(yīng)該是組織有意識采取的一種戰(zhàn)略,它保證能夠在最需要的時間將最需要的知識傳送給最需要的人。這樣可以幫助人們共享信息,并進(jìn)而將之通過不同的方式付諸實(shí)踐,最終達(dá)到提高組織業(yè)績的目的二、數(shù)據(jù)庫數(shù)據(jù)庫的定義數(shù)據(jù)庫(Database,簡稱DB)是長期儲存在計算機(jī)內(nèi)、有組織的、可共享的大量數(shù)據(jù)的集合。數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲的基本對象數(shù)據(jù)庫的基本特征數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存可為各種用戶共享冗余度較小數(shù)據(jù)獨(dú)立性較高易擴(kuò)展三、數(shù)據(jù)庫管理系統(tǒng)什么是DBMS位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。是基礎(chǔ)軟件,是一個大型復(fù)雜的軟件系統(tǒng)
DBMS的用途科學(xué)地組織和存儲數(shù)據(jù)、高效地獲取和維護(hù)數(shù)據(jù)硬件平臺基礎(chǔ)軟件平臺軟件基礎(chǔ)構(gòu)架平臺應(yīng)用軟件平臺軟件產(chǎn)品協(xié)同軟件辦公軟件數(shù)據(jù)庫系統(tǒng)操作系統(tǒng)
中間件應(yīng)用服務(wù)器數(shù)據(jù)庫在計算機(jī)系統(tǒng)中的位置DBMS的主要功能數(shù)據(jù)定義功能提供數(shù)據(jù)定義語言(DDL)
定義數(shù)據(jù)庫中的數(shù)據(jù)對象數(shù)據(jù)組織、存儲和管理
分類組織、存儲和管理各種數(shù)據(jù)確定組織數(shù)據(jù)的文件結(jié)構(gòu)和存取方式實(shí)現(xiàn)數(shù)據(jù)之間的聯(lián)系提供多種存取方法提高存取效率DBMS的主要功能數(shù)據(jù)操縱功能提供數(shù)據(jù)操縱語言(DML)實(shí)現(xiàn)對數(shù)據(jù)庫的基本操作(查詢、插入、刪除和修改)數(shù)據(jù)庫的事務(wù)管理和運(yùn)行管理數(shù)據(jù)庫在建立、運(yùn)行和維護(hù)時由DBMS統(tǒng)一管理和控制保證數(shù)據(jù)的安全性、完整性、多用戶對數(shù)據(jù)的并發(fā)使用發(fā)生故障后的系統(tǒng)恢復(fù)DBMS的主要功能數(shù)據(jù)庫的建立和維護(hù)功能(實(shí)用程序)數(shù)據(jù)庫初始數(shù)據(jù)裝載轉(zhuǎn)換數(shù)據(jù)庫轉(zhuǎn)儲介質(zhì)故障恢復(fù)數(shù)據(jù)庫的重組織性能監(jiān)視分析等其它功能
DBMS與網(wǎng)絡(luò)中其它軟件系統(tǒng)的通信兩個DBMS系統(tǒng)的數(shù)據(jù)轉(zhuǎn)換異構(gòu)數(shù)據(jù)庫之間的互訪和互操作四、數(shù)據(jù)庫系統(tǒng)什么是數(shù)據(jù)庫系統(tǒng)(DatabaseSystem,簡稱DBS)
在計算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成數(shù)據(jù)庫系統(tǒng)的構(gòu)成數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)應(yīng)用系統(tǒng)數(shù)據(jù)庫管理員
數(shù)據(jù)庫
應(yīng)用系統(tǒng)應(yīng)用開發(fā)工具
操作系統(tǒng)
數(shù)據(jù)庫管理系統(tǒng)
數(shù)據(jù)庫管理員用戶用戶用戶
數(shù)據(jù)庫系統(tǒng)1.1數(shù)據(jù)庫系統(tǒng)概述
1.1.1四個基本概念
1.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展
1.1.3數(shù)據(jù)庫系統(tǒng)的特點(diǎn)1.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展什么是數(shù)據(jù)管理對數(shù)據(jù)進(jìn)行分類、組織、編碼、存儲、檢索和維護(hù)數(shù)據(jù)處理的中心問題數(shù)據(jù)管理技術(shù)的發(fā)展過程人工管理階段(20世紀(jì)40年代中--50年代中)文件系統(tǒng)階段(20世紀(jì)50年代末--60年代中)數(shù)據(jù)庫系統(tǒng)階段(20世紀(jì)60年代末--現(xiàn)在)1.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展OSDBMS手工管理文件管理數(shù)據(jù)庫管理1.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展學(xué)習(xí)要點(diǎn)各階段的技術(shù)及應(yīng)用背景計算機(jī)應(yīng)用范圍外存儲設(shè)備數(shù)據(jù)管理軟件各個階段的差別體現(xiàn)誰管理數(shù)據(jù)數(shù)據(jù)面向誰數(shù)據(jù)與應(yīng)用的獨(dú)立性1.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術(shù)的發(fā)展動力應(yīng)用需求的推動計算機(jī)硬件的發(fā)展計算機(jī)軟件的發(fā)展一、人工管理階段時期20世紀(jì)40年代中--50年代中產(chǎn)生的背景應(yīng)用需求 科學(xué)計算 硬件水平 無直接存取存儲設(shè)備軟件水平 沒有操作系統(tǒng) 處理方式 批處理 一、人工管理階段背景計算機(jī)主要用于科學(xué)計算數(shù)據(jù)量小、結(jié)構(gòu)簡單,如高階方程、曲線擬和等外存為順序存取設(shè)備磁帶、卡片、紙帶,沒有磁盤等直接存取設(shè)備沒有操作系統(tǒng),沒有數(shù)據(jù)管理軟件用戶用機(jī)器指令編碼,通過紙帶機(jī)輸入程序和數(shù)據(jù),程序運(yùn)行完畢后,由用戶取走紙帶和運(yùn)算結(jié)果,再讓下一用戶上機(jī)操作一、人工管理階段特點(diǎn)用戶完全負(fù)責(zé)數(shù)據(jù)管理工作數(shù)據(jù)的組織、存儲結(jié)構(gòu)、存取方法、輸入輸出等數(shù)據(jù)完全面向特定的應(yīng)用程序每個用戶使用自己的數(shù)據(jù),數(shù)據(jù)不保存,用完就撤走數(shù)據(jù)與程序沒有獨(dú)立性程序中存取數(shù)據(jù)的子程序隨著存儲結(jié)構(gòu)的改變而改變磁帶的特點(diǎn)優(yōu)點(diǎn):廉價地存放大容量數(shù)據(jù)缺點(diǎn):順序訪問;1%所需,100%訪問一、人工管理階段訪問數(shù)據(jù)2訪問數(shù)據(jù)1訪問數(shù)據(jù)n人工管理階段(續(xù))特點(diǎn)數(shù)據(jù)的管理者:用戶(程序員),數(shù)據(jù)不保存數(shù)據(jù)面向的對象:某一應(yīng)用程序數(shù)據(jù)的共享程度:無共享、冗余度極大數(shù)據(jù)的獨(dú)立性:不獨(dú)立,完全依賴于程序數(shù)據(jù)的結(jié)構(gòu)化:無結(jié)構(gòu)數(shù)據(jù)控制能力:應(yīng)用程序自己控制應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系(人工管理階段)
應(yīng)用程序1數(shù)據(jù)集1應(yīng)用程序2數(shù)據(jù)集2應(yīng)用程序n數(shù)據(jù)集n...…...…人工管理階段應(yīng)用程序與數(shù)據(jù)之間的對應(yīng)關(guān)系
二、文件系統(tǒng)階段時期20世紀(jì)50年代末--60年代中產(chǎn)生的背景應(yīng)用需求 科學(xué)計算、管理 硬件水平 磁盤、磁鼓 軟件水平 有文件系統(tǒng) 處理方式 聯(lián)機(jī)實(shí)時處理、批處理
二、文件系統(tǒng)階段背景計算機(jī)不但用于科學(xué)計算,還用于管理外存有了磁盤、磁鼓等直接存取設(shè)備直接存取設(shè)備(DASD)無須順序存取由地址直接訪問所需記錄有了專門管理數(shù)據(jù)的軟件,一般稱為文件系統(tǒng)文件存儲空間的管理目錄管理文件讀寫管理文件保護(hù)向用戶提供操作接口二、文件系統(tǒng)階段特點(diǎn)系統(tǒng)提供一定的數(shù)據(jù)管理功能存取方法(索引文件、鏈接文件、直接存取文件、倒排文件等)支持對文件的基本操作(增、刪、改、查等),用戶程序不必考慮物理細(xì)節(jié)數(shù)據(jù)的存取基本上以記錄為單位數(shù)據(jù)仍是面向應(yīng)用的一個數(shù)據(jù)文件對應(yīng)一個用戶程序數(shù)據(jù)與程序有一定的獨(dú)立性文件的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)由系統(tǒng)進(jìn)行轉(zhuǎn)換,數(shù)據(jù)在存儲上的改變不一定反映在程序上二、文件系統(tǒng)階段
存取方式程序1程序2程序n數(shù)據(jù)2數(shù)據(jù)1數(shù)據(jù)n二、文件系統(tǒng)階段數(shù)據(jù)與程序的獨(dú)立性差文件系統(tǒng)的出現(xiàn)并沒有從根本上改變數(shù)據(jù)與程序緊密結(jié)合的狀況,數(shù)據(jù)的邏輯結(jié)構(gòu)改變則必須修改應(yīng)用程序文件系統(tǒng)只是解脫了程序員對物理設(shè)備存取的負(fù)擔(dān),它并不理解數(shù)據(jù)的語義,只負(fù)責(zé)存儲數(shù)據(jù)的語義信息只能由程序來解釋,也就是說,數(shù)據(jù)收集以后怎么組織,以及數(shù)據(jù)取出來之后按什么含義應(yīng)用,只有全權(quán)管理它的程序知道。一個應(yīng)用若想共享另一個應(yīng)用生成的數(shù)據(jù),必須同另一個應(yīng)用溝通,了解數(shù)據(jù)的語義與組織方式二、文件系統(tǒng)階段數(shù)據(jù)的共享性差,冗余度大數(shù)據(jù)面向應(yīng)用即使不同應(yīng)用程序所需要的數(shù)據(jù)有部分相同時,也必須建立各自的文件,而不能共享相同的數(shù)據(jù)數(shù)據(jù)孤立數(shù)據(jù)分散管理,許多文件,許多數(shù)據(jù)格式數(shù)據(jù)的不一致性由于數(shù)據(jù)存在很多副本,給數(shù)據(jù)的修改與維護(hù)帶來了困難,容易造成數(shù)據(jù)的不一致性文件系統(tǒng)階段特點(diǎn)數(shù)據(jù)的管理者:文件系統(tǒng),數(shù)據(jù)可長期保存數(shù)據(jù)面向的對象:應(yīng)用程序,應(yīng)用程序自己控制數(shù)據(jù)數(shù)據(jù)的共享程度:共享性差、冗余度大數(shù)據(jù)的結(jié)構(gòu)化:記錄內(nèi)有結(jié)構(gòu),整體無結(jié)構(gòu)數(shù)據(jù)的獨(dú)立性:獨(dú)立性差,數(shù)據(jù)的邏輯結(jié)構(gòu)改變必須修改應(yīng)用程序數(shù)據(jù)的一致性:所有文件副本必須同時更新文件系統(tǒng)中數(shù)據(jù)的結(jié)構(gòu)記錄內(nèi)有結(jié)構(gòu)。數(shù)據(jù)的結(jié)構(gòu)是靠程序定義和解釋的。數(shù)據(jù)只能是定長的??梢蚤g接實(shí)現(xiàn)數(shù)據(jù)變長要求,但訪問相應(yīng)數(shù)據(jù)的應(yīng)用程序復(fù)雜了。文件間是獨(dú)立的,因此數(shù)據(jù)整體無結(jié)構(gòu)??梢蚤g接實(shí)現(xiàn)數(shù)據(jù)整體的有結(jié)構(gòu),但必須在應(yīng)用程序中對描述數(shù)據(jù)間的聯(lián)系。數(shù)據(jù)的最小存取單位是記錄。三、數(shù)據(jù)庫系統(tǒng)階段時期20世紀(jì)60年代末以來產(chǎn)生的背景應(yīng)用背景 大規(guī)模管理 硬件背景 大容量磁盤、磁盤陣列 軟件背景 有數(shù)據(jù)庫管理系統(tǒng) 處理方式 聯(lián)機(jī)實(shí)時處理,分布處理,批處理三、數(shù)據(jù)庫系統(tǒng)階段背景計算機(jī)管理的數(shù)據(jù)量大,關(guān)系復(fù)雜,共享性要求強(qiáng)(多種應(yīng)用、不同語言共享數(shù)據(jù))外存有了大容量磁盤,光盤軟件價格上升,硬件價格下降,編制和維護(hù)軟件及應(yīng)用程序成本相對增加,其中維護(hù)的成本更高,力求降低三、數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)庫(舉例)三、數(shù)據(jù)庫系統(tǒng)階段現(xiàn)實(shí)生活中,人們收集并抽取出一個應(yīng)用所需要的大量數(shù)據(jù)之后,應(yīng)將其保存起來以供進(jìn)一步加工處理,進(jìn)一步抽取有用信息。原來的數(shù)據(jù)管理技術(shù)不在適合海量數(shù)據(jù)的管理,數(shù)據(jù)庫技術(shù)逐漸發(fā)展起來。人們借助于計算機(jī)和數(shù)據(jù)庫技術(shù),方便和充分地利用這些寶貴的信息資源。三、數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)庫的定義數(shù)據(jù)庫(Database,簡稱DB)是長期儲存在計算機(jī)內(nèi)、有組織的、可共享的大量數(shù)據(jù)集合數(shù)據(jù)庫的特征數(shù)據(jù)庫的特征數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存可為各種用戶共享,冗余度較小數(shù)據(jù)獨(dú)立性較高易擴(kuò)展……三、數(shù)據(jù)庫系統(tǒng)階段特點(diǎn)數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充數(shù)據(jù)獨(dú)立性高產(chǎn)生了數(shù)據(jù)庫管理系統(tǒng)(DataBaseManagementSystem,即DBMS),數(shù)據(jù)由DBMS統(tǒng)一管理三、數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)庫管理系統(tǒng)(DBMS)系統(tǒng)軟件,數(shù)據(jù)庫系統(tǒng)的一個重要組成部分科學(xué)地組織和存儲數(shù)據(jù),高效地獲取和維護(hù)數(shù)據(jù)位于用戶與操作系統(tǒng)之間具有下述功能:數(shù)據(jù)定義功能–DDL(如Create)數(shù)據(jù)操作功能–DML(如Select,Delete,Insert,Update)數(shù)據(jù)庫的運(yùn)行管理數(shù)據(jù)庫的建立和維護(hù)功能三、數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)庫觀點(diǎn)數(shù)據(jù)不是依賴于處理過程的附屬品,而是現(xiàn)實(shí)世界中獨(dú)立存在的對象數(shù)據(jù)1DBMS統(tǒng)一存取數(shù)據(jù)2數(shù)據(jù)n程序2程序1程序n1.1數(shù)據(jù)庫系統(tǒng)概述
1.1.1四個基本概念
1.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展
1.1.3數(shù)據(jù)庫系統(tǒng)的特點(diǎn)1.1.3數(shù)據(jù)庫系統(tǒng)的特點(diǎn)數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充數(shù)據(jù)獨(dú)立性高數(shù)據(jù)由DBMS統(tǒng)一管理和控制1.1.3數(shù)據(jù)庫系統(tǒng)的特點(diǎn)面向全組織的復(fù)雜的數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)從整體角度看待和描述數(shù)據(jù),數(shù)據(jù)面向整個系統(tǒng),可以被多個用戶、多個應(yīng)用共享使用;支持全企業(yè)的應(yīng)用而不是某一個應(yīng)用數(shù)據(jù)反映了客觀事物間的本質(zhì)聯(lián)系,而不是著眼于面向某個應(yīng)用,是有結(jié)構(gòu)的數(shù)據(jù)。這是數(shù)據(jù)庫系統(tǒng)的主要特征之一,與文件系統(tǒng)的根本差別。文件系統(tǒng)只是記錄的內(nèi)部有結(jié)構(gòu),一個文件的記錄之間是個線性序列,記錄之間無聯(lián)系數(shù)據(jù)結(jié)構(gòu)化整體數(shù)據(jù)的結(jié)構(gòu)化是數(shù)據(jù)庫的主要特征之一整體結(jié)構(gòu)化不再僅僅針對某一個應(yīng)用,而是面向全組織不僅數(shù)據(jù)內(nèi)部結(jié)構(gòu)化,整體是結(jié)構(gòu)化的,數(shù)據(jù)之間具有聯(lián)系數(shù)據(jù)庫中實(shí)現(xiàn)的是數(shù)據(jù)的真正結(jié)構(gòu)化數(shù)據(jù)的結(jié)構(gòu)用數(shù)據(jù)模型描述,無需程序定義和解釋數(shù)據(jù)可以變長數(shù)據(jù)的最小存取單位是數(shù)據(jù)項1.1.3數(shù)據(jù)庫系統(tǒng)的特點(diǎn)數(shù)據(jù)的冗余度低,易擴(kuò)充數(shù)據(jù)面向整個系統(tǒng),而不是面向某一應(yīng)用,數(shù)據(jù)集中管理,數(shù)據(jù)共享,因此冗余度低節(jié)省存儲空間,減少存取時間,且可避免數(shù)據(jù)之間的不一致性每個應(yīng)用選用數(shù)據(jù)庫的一個子集,只要重新選取不同子集或者加上一小部分?jǐn)?shù)據(jù),就可以滿足新的應(yīng)用要求,這就是易擴(kuò)充性1.1.3數(shù)據(jù)庫系統(tǒng)的特點(diǎn)具有較高的數(shù)據(jù)和程序的獨(dú)立性把數(shù)據(jù)庫的定義和描述從應(yīng)用程序中分離出去數(shù)據(jù)描述是分級的(全局邏輯、局部邏輯、存儲)數(shù)據(jù)的存取由系統(tǒng)管理,用戶不必考慮存取路徑等細(xì)節(jié),從而簡化了應(yīng)用程序1.1.3數(shù)據(jù)庫系統(tǒng)的特點(diǎn)統(tǒng)一的數(shù)據(jù)控制功能,數(shù)據(jù)共享程度高數(shù)據(jù)的安全性控制(Security)保護(hù)數(shù)據(jù)以防止不合法的使用所造成的數(shù)據(jù)泄露和破壞措施:用戶標(biāo)識與鑒定,存取控制數(shù)據(jù)的完整性控制(Integrity)數(shù)據(jù)的正確性、有效性、相容性措施:完整性約束條件定義和檢查并發(fā)控制(Concurrency)對多用戶的并發(fā)操作加以控制、協(xié)調(diào),防止其互相干擾而得到錯誤的結(jié)果并使數(shù)據(jù)庫完整性遭到破壞措施:封鎖1.1.3數(shù)據(jù)庫系統(tǒng)的特點(diǎn)統(tǒng)一的數(shù)據(jù)控制功能,數(shù)據(jù)共享程度高(續(xù))數(shù)據(jù)庫恢復(fù)(Recovery)把數(shù)據(jù)庫從錯誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)(亦稱一致性狀態(tài)或完整性狀態(tài))措施:轉(zhuǎn)儲,鏡像,日志數(shù)據(jù)獨(dú)立性高物理獨(dú)立性指用戶的應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨(dú)立的。當(dāng)數(shù)據(jù)的物理存儲改變了,應(yīng)用程序不用改變。邏輯獨(dú)立性指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨(dú)立的。數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不變。數(shù)據(jù)獨(dú)立性是由DBMS的二級映像功能來保證的數(shù)據(jù)由DBMS統(tǒng)一管理和控制DBMS提供的數(shù)據(jù)控制功能(1)數(shù)據(jù)的安全性(Security)保護(hù)保護(hù)數(shù)據(jù),以防止不合法的使用造成的數(shù)據(jù)的泄密和破壞。(2)數(shù)據(jù)的完整性(Integrity)檢查將數(shù)據(jù)控制在有效的范圍內(nèi),或保證數(shù)據(jù)之間滿足一定的關(guān)系。(3)并發(fā)(Concurrency)控制對多用戶的并發(fā)操作加以控制和協(xié)調(diào),防止相互干擾而得到錯誤的結(jié)果。(4)數(shù)據(jù)庫恢復(fù)(Recovery)將數(shù)據(jù)庫從錯誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)。應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系(數(shù)據(jù)庫系統(tǒng))DBMS應(yīng)用程序1應(yīng)用程序2數(shù)據(jù)庫…數(shù)據(jù)庫系統(tǒng)階段應(yīng)用程序與數(shù)據(jù)之間的對應(yīng)關(guān)系
第一章緒論1.1數(shù)據(jù)庫系統(tǒng)概述1.2數(shù)據(jù)模型1.3數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.4數(shù)據(jù)庫系統(tǒng)的組成1.5小結(jié)
1.2數(shù)據(jù)模型
1.2.1兩大類數(shù)據(jù)模型
1.2.2概念模型
1.2.3數(shù)據(jù)模型三要素
1.2.4最常用的數(shù)據(jù)模型
1.2.5層次模型
1.2.6網(wǎng)狀模型
1.2.7關(guān)系模型數(shù)據(jù)模型概述在數(shù)據(jù)庫中用數(shù)據(jù)模型這個工具來抽象、表示和處理現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實(shí)世界的模擬。數(shù)據(jù)模型應(yīng)滿足三方面要求能比較真實(shí)地模擬現(xiàn)實(shí)世界容易為人所理解便于在計算機(jī)上實(shí)現(xiàn)數(shù)據(jù)模型概述現(xiàn)實(shí)世界存在于人們頭腦之外的客觀世界例如:倉庫管理中涉及的貨物管理,貨物、貨物的進(jìn)出以及相應(yīng)的報表、圖表、表格、卡片、單據(jù)等信息世界現(xiàn)實(shí)世界在人腦中的反映計算機(jī)世界信息在計算機(jī)中以數(shù)據(jù)形式存儲數(shù)據(jù)模型概述現(xiàn)實(shí)世界信息世界機(jī)器世界計算機(jī)世界轉(zhuǎn)換概念模型(信息模型)DBMS相關(guān)的邏輯數(shù)據(jù)模型它是按用戶的觀點(diǎn)來對數(shù)據(jù)和信息建模,主要用于數(shù)據(jù)庫設(shè)計。不依賴于具體的計算機(jī)系統(tǒng)認(rèn)識抽象它是按計算機(jī)的觀點(diǎn)對數(shù)據(jù)進(jìn)行建模,主要用于DBMS的實(shí)現(xiàn)。有網(wǎng)狀、層次、關(guān)系、面向?qū)ο蟮?。?shù)據(jù)模型概述現(xiàn)實(shí)世界信息世界計算機(jī)世界概念化形式化用戶計算機(jī)應(yīng)用概念模型數(shù)據(jù)模型數(shù)據(jù)模型概述數(shù)據(jù)模型的概念數(shù)據(jù)及數(shù)據(jù)間聯(lián)系的表示形式(對現(xiàn)實(shí)世界特征的模擬和抽象)對現(xiàn)實(shí)世界特征的模擬和抽象真實(shí)地模擬現(xiàn)實(shí)世界易為人所理解便于計算機(jī)實(shí)現(xiàn)分兩個不同的層次概念數(shù)據(jù)模型結(jié)構(gòu)數(shù)據(jù)模型數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)中用于提供信息表示和操作手段的形式構(gòu)架現(xiàn)實(shí)世界信息世界計算機(jī)世界數(shù)據(jù)模型概述數(shù)據(jù)模型分成兩個不同的層次概念數(shù)據(jù)模型也稱信息模型,它是按用戶的觀點(diǎn)來對數(shù)據(jù)和信息建模。結(jié)構(gòu)數(shù)據(jù)模型它是按計算機(jī)系統(tǒng)的觀點(diǎn)對數(shù)據(jù)建模,主要包括網(wǎng)狀模型、層次模型、關(guān)系模型等。數(shù)據(jù)模型概述這種分類是按照對客觀對象的抽象過程---兩步抽象來分的:
現(xiàn)實(shí)世界中的客觀對象抽象為概念模型;把概念模型轉(zhuǎn)換為某一DBMS支持的數(shù)據(jù)模型。概念模型是現(xiàn)實(shí)世界到機(jī)器世界的一個中間層次。兩大類數(shù)據(jù)模型數(shù)據(jù)模型分為兩類(分屬兩個不同的層次)(1)概念模型也稱信息模型,它是按用戶的觀點(diǎn)來對數(shù)據(jù)和信息建模,用于數(shù)據(jù)庫設(shè)計。(2)邏輯模型和物理模型
邏輯模型主要包括網(wǎng)狀模型、層次模型、關(guān)系模型、面向?qū)ο竽P偷?,按計算機(jī)系統(tǒng)的觀點(diǎn)對數(shù)據(jù)建模,用于DBMS實(shí)現(xiàn)。物理模型是對數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示方式和存取方法,在磁盤或磁帶上的存儲方式和存取方法。兩大類數(shù)據(jù)模型(續(xù))客觀對象的抽象過程---兩步抽象現(xiàn)實(shí)世界中的客觀對象抽象為概念模型;把概念模型轉(zhuǎn)換為某一DBMS支持的數(shù)據(jù)模型。兩大類數(shù)據(jù)模型(續(xù))DBMS支持的數(shù)據(jù)模型概念模型認(rèn)識抽象信息世界機(jī)器世界現(xiàn)實(shí)世界中客觀對象的抽象過程現(xiàn)實(shí)世界現(xiàn)實(shí)世界概念模型數(shù)據(jù)庫設(shè)計人員完成邏輯模型物理模型由DBMS完成概念模型邏輯模型數(shù)據(jù)庫設(shè)計人員完成
1.2數(shù)據(jù)模型
1.2.1兩大類數(shù)據(jù)模型
1.2.2概念模型
1.2.3數(shù)據(jù)模型三要素
1.2.4最常用的數(shù)據(jù)模型
1.2.5層次模型
1.2.6網(wǎng)狀模型
1.2.7關(guān)系模型
1.2.2概念模型信息世界中的基本概念*兩個實(shí)體型之間的聯(lián)系*兩個以上實(shí)體型之間的聯(lián)系*單個實(shí)體型內(nèi)的聯(lián)系*概念模型的一種表示方法*一個實(shí)例概念模型概念模型的用途概念模型用于信息世界的建模是現(xiàn)實(shí)世界到機(jī)器世界的一個中間層次是數(shù)據(jù)庫設(shè)計的有力工具數(shù)據(jù)庫設(shè)計人員和用戶之間進(jìn)行交流的語言對概念模型的基本要求較強(qiáng)的語義表達(dá)能力能夠方便、直接地表達(dá)應(yīng)用中的各種語義知識簡單、清晰、易于用戶理解一、信息世界中的基本概念(1)實(shí)體(Entity)
客觀存在并可相互區(qū)別的事物稱為實(shí)體??梢允蔷唧w的人、事、物或抽象的概念。(2)屬性(Attribute)
實(shí)體所具有的某一特性稱為屬性。一個實(shí)體可以由若干個屬性來刻畫。如:學(xué)生實(shí)體由學(xué)號、姓名、性別、出生日期、系別等屬性組成(3)碼(Key)&實(shí)體標(biāo)識符唯一標(biāo)識實(shí)體的屬性集稱為碼。信息世界中的基本概念(續(xù))(4)域(Domain)
屬性的取值范圍稱為該屬性的域。如:性別的域為(男,女)
(5)實(shí)體型(EntityType)
用實(shí)體名及其屬性名集合來抽象和刻畫同類實(shí)體稱為實(shí)體型(6)實(shí)體集(EntitySet)
同一類型實(shí)體的集合稱為實(shí)體集信息世界中的基本概念(續(xù))(7)聯(lián)系(Relationship)
現(xiàn)實(shí)世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世界中反映為實(shí)體內(nèi)部的聯(lián)系和實(shí)體之間的聯(lián)系。實(shí)體內(nèi)部的聯(lián)系通常是指組成實(shí)體的各屬性之間的聯(lián)系實(shí)體之間的聯(lián)系通常是指不同實(shí)體集之間的聯(lián)系
1.2數(shù)據(jù)模型
1.2.1兩大類數(shù)據(jù)模型
1.2.2概念模型
1.2.3數(shù)據(jù)模型三要素
1.2.4最常用的數(shù)據(jù)模型
1.2.5層次模型
1.2.6網(wǎng)狀模型
1.2.7關(guān)系模型
1.2.3數(shù)據(jù)模型的組成要素數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)操作完整性約束條件
一、數(shù)據(jù)結(jié)構(gòu)什么是數(shù)據(jù)結(jié)構(gòu)描述數(shù)據(jù)庫的組成對象,以及對象之間的聯(lián)系描述的內(nèi)容與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對象與數(shù)據(jù)之間聯(lián)系有關(guān)的對象數(shù)據(jù)結(jié)構(gòu)是對系統(tǒng)靜態(tài)特性的描述,即組成數(shù)據(jù)庫的對象類型。在數(shù)據(jù)庫系統(tǒng)中一般按數(shù)據(jù)結(jié)構(gòu)的類型來命名數(shù)據(jù)模型
二、數(shù)據(jù)操作數(shù)據(jù)操作對數(shù)據(jù)庫中各種對象(型)的實(shí)例(值)允許執(zhí)行的操作及有關(guān)的操作規(guī)則數(shù)據(jù)操作的類型查詢更新(包括插入、刪除、修改)
數(shù)據(jù)操作(續(xù))數(shù)據(jù)模型對操作的定義操作的確切含義操作符號操作規(guī)則(如優(yōu)先級)實(shí)現(xiàn)操作的語言數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述請舉例說明三、數(shù)據(jù)的完整性約束條件數(shù)據(jù)的完整性約束條件一組完整性規(guī)則的集合。完整性規(guī)則:給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和儲存規(guī)則用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。
數(shù)據(jù)的完整性約束條件(續(xù))數(shù)據(jù)模型對完整性約束條件的定義反映和規(guī)定本數(shù)據(jù)模型必須遵守的基本的通用的完整性約束條件。例如在關(guān)系模型中,任何關(guān)系必須滿足實(shí)體完整性和參照完整性兩個條件。提供定義完整性約束條件的機(jī)制,以反映具體應(yīng)用所涉及的數(shù)據(jù)必須遵守的特定的語義約束條件。
1.2數(shù)據(jù)模型
1.2.1兩大類數(shù)據(jù)模型
1.2.2數(shù)據(jù)模型的組成要素
1.2.3概念模型
1.2.4最常用的數(shù)據(jù)模型
1.2.5層次模型
1.2.6網(wǎng)狀模型
1.2.7關(guān)系模型
1.2.4最常用的數(shù)據(jù)模型非關(guān)系模型層次模型(HierarchicalModel)網(wǎng)狀模型(NetworkModel)關(guān)系模型(RelationalModel)面向?qū)ο竽P?ObjectOrientedModel)對象關(guān)系模型(ObjectRelationalModel)1.2.5層次模型層次模型是數(shù)據(jù)庫系統(tǒng)中最早出現(xiàn)的數(shù)據(jù)模型層次數(shù)據(jù)庫系統(tǒng)的典型代表是IBM公司的IMS(InformationManagementSystem)數(shù)據(jù)庫管理系統(tǒng)層次模型用樹形結(jié)構(gòu)來表示各類實(shí)體以及實(shí)體間的聯(lián)系
一、層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)層次模型
滿足下面兩個條件的基本層次聯(lián)系的集合為層次模型1.有且只有一個結(jié)點(diǎn)沒有雙親結(jié)點(diǎn),這個結(jié)點(diǎn)稱為根結(jié)點(diǎn)2.根以外的其它結(jié)點(diǎn)有且只有一個雙親結(jié)點(diǎn)層次模型中的幾個術(shù)語根結(jié)點(diǎn),雙親結(jié)點(diǎn),兄弟結(jié)點(diǎn),葉結(jié)點(diǎn)層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))
R1
根結(jié)點(diǎn)
R2
兄弟結(jié)點(diǎn)
R3
葉結(jié)點(diǎn)
R4
兄弟結(jié)點(diǎn)
R5
葉結(jié)點(diǎn)
葉結(jié)點(diǎn)圖1.16一個層次模型的示例層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))層次模型的特點(diǎn):結(jié)點(diǎn)的雙親是唯一的只能直接處理一對多的實(shí)體聯(lián)系每個記錄類型可以定義一個排序字段,也稱為碼字段任何記錄值只有按其路徑查看時,才能顯出它的全部意義沒有一個子女記錄值能夠脫離雙親記錄值而獨(dú)立存在層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))圖1.17教員學(xué)生層次數(shù)據(jù)庫模型
根結(jié)點(diǎn)記錄型系的子女結(jié)點(diǎn)記錄型教員的雙親結(jié)點(diǎn)葉結(jié)點(diǎn)葉結(jié)點(diǎn)字段層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))圖1.18教員學(xué)生層次數(shù)據(jù)庫的一個值
三、層次模型的數(shù)據(jù)操縱與完整性約束
層次模型的數(shù)據(jù)操縱查詢插入刪除更新層次模型的數(shù)據(jù)操縱與完整性約束(續(xù))層次模型的完整性約束條件
無相應(yīng)的雙親結(jié)點(diǎn)值就不能插入子女結(jié)點(diǎn)值如果刪除雙親結(jié)點(diǎn)值,則相應(yīng)的子女結(jié)點(diǎn)值也被同時刪除更新操作時,應(yīng)更新所有相應(yīng)記錄,以保證數(shù)據(jù)的一致性四、層次數(shù)據(jù)模型的存儲結(jié)構(gòu)鄰接法按照層次樹前序遍歷的順序把所有記錄值依次鄰接存放,即通過物理空間的位置相鄰來實(shí)現(xiàn)層次順序?qū)哟螖?shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))圖1.20層次數(shù)據(jù)庫及其實(shí)例…A1A2C8C6C4B6C9C2B4C14C7C5C3B1A1圖1.21鄰接法按鄰接法存放圖1.20(b)中以根記錄A1為首的層次記錄實(shí)例集按鄰接法存放圖1.20(b)中以根記錄A1為首的層次記錄實(shí)例集
層次數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))鏈接法用指引來反映數(shù)據(jù)之間的層次聯(lián)系子女-兄弟鏈接法層次序列鏈接法層次數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))子女-兄弟鏈接法每個記錄設(shè)兩類指針,分別指向最左邊的子女(每個記錄型對應(yīng)一個)和最近的兄弟層次數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))層次序列鏈接法按樹的前序穿越順序鏈接各記錄值五、層次模型的優(yōu)缺點(diǎn)優(yōu)點(diǎn)層次模型的數(shù)據(jù)結(jié)構(gòu)比較簡單清晰
查詢效率高,性能優(yōu)于關(guān)系模型,不低于網(wǎng)狀模型層次數(shù)據(jù)模型提供了良好的完整性支持缺點(diǎn)多對多聯(lián)系表示不自然對插入和刪除操作的限制多,應(yīng)用程序的編寫比較復(fù)雜
查詢子女結(jié)點(diǎn)必須通過雙親結(jié)點(diǎn)由于結(jié)構(gòu)嚴(yán)密,層次命令趨于程序化
1.2數(shù)據(jù)模型
1.2.1兩大類數(shù)據(jù)模型
1.2.2數(shù)據(jù)模型的組成要素
1.2.3概念模型
1.2.4最常用的數(shù)據(jù)模型
1.2.5層次模型
1.2.6網(wǎng)狀模型
1.2.7關(guān)系模型1.2.6網(wǎng)狀模型網(wǎng)狀數(shù)據(jù)庫系統(tǒng)采用網(wǎng)狀模型作為數(shù)據(jù)的組織方式典型代表是DBTG系統(tǒng):亦稱CODASYL系統(tǒng)70年代由DBTG提出的一個系統(tǒng)方案奠定了數(shù)據(jù)庫系統(tǒng)的基本概念、方法和技術(shù)實(shí)際系統(tǒng)CullinetSoftwareInc.公司的IDMSUnivac公司的DMS1100Honeywell公司的IDS/2HP公司的IMAGE1.網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)網(wǎng)狀模型滿足下面兩個條件的基本層次聯(lián)系的集合:1.允許一個以上的結(jié)點(diǎn)無雙親;2.一個結(jié)點(diǎn)可以有多于一個的雙親。網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))表示方法(與層次數(shù)據(jù)模型相同)實(shí)體型:用記錄類型描述每個結(jié)點(diǎn)表示一個記錄類型(實(shí)體)屬性:用字段描述每個記錄類型可包含若干個字段聯(lián)系:用結(jié)點(diǎn)之間的連線表示記錄類型(實(shí)體)之間的一對多的父子聯(lián)系網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))網(wǎng)狀模型與層次模型的區(qū)別網(wǎng)狀模型允許多個結(jié)點(diǎn)沒有雙親結(jié)點(diǎn)網(wǎng)狀模型允許結(jié)點(diǎn)有多個雙親結(jié)點(diǎn)網(wǎng)狀模型允許兩個結(jié)點(diǎn)之間有多種聯(lián)系(復(fù)合聯(lián)系)網(wǎng)狀模型可以更直接地去描述現(xiàn)實(shí)世界層次模型實(shí)際上是網(wǎng)狀模型的一個特例網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))網(wǎng)狀模型中子女結(jié)點(diǎn)與雙親結(jié)點(diǎn)的聯(lián)系可以不唯一要為每個聯(lián)系命名,并指出與該聯(lián)系有關(guān)的雙親記錄和子女記錄
R1與R3之間的聯(lián)系L1R2與R3之間的聯(lián)系L2
網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))網(wǎng)狀模型的例子
網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))多對多聯(lián)系在網(wǎng)狀模型中的表示用網(wǎng)狀模型間接表示多對多聯(lián)系方法:將多對多聯(lián)系直接分解成一對多聯(lián)系網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例如:一個學(xué)生可以選修若干門課程,某一課程可以被多個學(xué)生選修,學(xué)生與課程之間是多對多聯(lián)系引進(jìn)一個學(xué)生選課的聯(lián)結(jié)記錄,由3個數(shù)據(jù)項組成學(xué)號課程號成績表示某個學(xué)生選修某一門課程及其成績網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))圖1.24學(xué)生/選課/課程的網(wǎng)狀數(shù)據(jù)模型網(wǎng)狀數(shù)據(jù)模型的操縱與完整性約束(續(xù))網(wǎng)狀數(shù)據(jù)庫系統(tǒng)(如DBTG)對數(shù)據(jù)操縱加了一些限制,提供了一定的完整性約束碼:唯一標(biāo)識記錄的數(shù)據(jù)項的集合
一個聯(lián)系中雙親記錄與子女記錄之間是一對多聯(lián)系支持雙親記錄和子女記錄之間某些約束條件
三、網(wǎng)狀數(shù)據(jù)模型的存儲結(jié)構(gòu)關(guān)鍵實(shí)現(xiàn)記錄之間的聯(lián)系常用方法單向鏈接雙向鏈接環(huán)狀鏈接向首鏈接網(wǎng)狀數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))圖1.25學(xué)生/選課/課程的網(wǎng)狀數(shù)據(jù)庫實(shí)例
學(xué)生記錄課程記錄選課記錄四、網(wǎng)狀數(shù)據(jù)模型的優(yōu)缺點(diǎn)優(yōu)點(diǎn)能夠更為直接地描述現(xiàn)實(shí)世界,如一個結(jié)點(diǎn)可以有多個雙親具有良好的性能,存取效率較高缺點(diǎn)結(jié)構(gòu)比較復(fù)雜,而且隨著應(yīng)用環(huán)境的擴(kuò)大,數(shù)據(jù)庫的結(jié)構(gòu)就變得越來越復(fù)雜,不利于最終用戶掌握DDL、DML語言復(fù)雜,用戶不容易使用
1.2數(shù)據(jù)模型
1.2.1兩大類數(shù)據(jù)模型
1.2.2數(shù)據(jù)模型的組成要素
1.2.3概念模型
1.2.4最常用的數(shù)據(jù)模型
1.2.5層次模型
1.2.6網(wǎng)狀模型
1.2.7關(guān)系模型1.2.7關(guān)系模型關(guān)系數(shù)據(jù)庫系統(tǒng)采用關(guān)系模型作為數(shù)據(jù)的組織方式1970年美國IBM公司SanJose研究室的研究員E.F.Codd首次提出了數(shù)據(jù)庫系統(tǒng)的關(guān)系模型計算機(jī)廠商新推出的數(shù)據(jù)庫管理系統(tǒng)幾乎都支持關(guān)系模型
1.2.7關(guān)系模型關(guān)系(Relation):對應(yīng)通常說的表元組(Tuple):表中的一行即為一個元組屬性(Attribute):表中的一列即為一個屬性主碼(key):圖中的某個屬性組,它可以唯一確定一個元組域(domain):屬性的取值范圍,如人的年齡一般在0歲~150歲之間。性別的域是(男,女),系別的域是一個學(xué)校所有系名的集合。分量:元組中的一個屬性值,關(guān)系模式:對關(guān)系的描述,一般表示為:關(guān)系名(屬性1,屬性2,…,屬性n)一、關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)
在用戶觀點(diǎn)下,關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表,它由行和列組成。學(xué)生登記表
屬性元組男女男性別192221年齡D01李紅S02D02王偉S03D01張軍S01系號姓名學(xué)號主碼分量關(guān)系模式(男,女)關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關(guān)系(Relation)一個關(guān)系對應(yīng)通常說的一張表元組(Tuple)表中的一行即為一個元組屬性(Attribute)表中的一列即為一個屬性,給每一個屬性起一個名稱即屬性名關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))主碼(Key)表中的某個屬性組,它可以唯一確定一個元組。域(Domain)屬性的取值范圍。分量元組中的一個屬性值。關(guān)系模式對關(guān)系的描述關(guān)系名(屬性1,屬性2,…,屬性n)學(xué)生(學(xué)號,姓名,年齡,性別,系,年級)關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例1學(xué)生、系、系與學(xué)生之間的一對多聯(lián)系:學(xué)生(學(xué)號,姓名,年齡,性別,系號,年級)系(系號,系名,辦公地點(diǎn))例2系、系主任、系與系主任間的一對一聯(lián)系關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例3學(xué)生、課程、學(xué)生與課程之間的多對多聯(lián)系:
學(xué)生(學(xué)號,姓名,年齡,性別,系號,年級)課程(課程號,課程名,學(xué)分)選修(學(xué)號,課程號,成績)關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關(guān)系必須是規(guī)范化的,滿足一定的規(guī)范條件最基本的規(guī)范條件:關(guān)系的每一個分量必須是一個不可分的數(shù)據(jù)項,不允許表中還有表
圖1.27中工資和扣除是可分的數(shù)據(jù)項,不符合關(guān)系模型要求
職工號姓名職稱工資扣除實(shí)發(fā)基本津貼職務(wù)房租水電86051陳平講師13051200501601122283圖1.27一個工資表(表中有表)實(shí)例關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關(guān)系術(shù)語一般表格的術(shù)語關(guān)系名表名關(guān)系模式表頭(表格的描述)關(guān)系(一張)二維表元組記錄或行屬性列屬性名列名屬性值列值分量一條記錄中的一個列值非規(guī)范關(guān)系表中有表(大表中嵌有小表)表1.2術(shù)語對比
二、關(guān)系數(shù)據(jù)模型的操縱與完整性約束數(shù)據(jù)操作是集合操作,操作對象和操作結(jié)果都是關(guān)系查詢插入刪除更新數(shù)據(jù)操作是集合操作,操作對象和操作結(jié)果都是關(guān)系,即若干元組的集合存取路徑對用戶隱蔽,用戶只要指出“干什么”,不必詳細(xì)說明“怎么干”關(guān)系數(shù)據(jù)模型的操縱與完整性約束(續(xù))關(guān)系的完整性約束條件實(shí)體完整性參照完整性用戶定義的完整性三、關(guān)系數(shù)據(jù)模型的存儲結(jié)構(gòu)實(shí)體及實(shí)體間的聯(lián)系都用表來表示表以文件形式存儲有的DBMS一個表對應(yīng)一個操作系統(tǒng)文件有的DBMS自己設(shè)計文件結(jié)構(gòu)四、關(guān)系數(shù)據(jù)模型的優(yōu)缺點(diǎn)優(yōu)點(diǎn)建立在嚴(yán)格的數(shù)學(xué)概念的基礎(chǔ)上概念單一實(shí)體和各類聯(lián)系都用關(guān)系來表示對數(shù)據(jù)的檢索結(jié)果也是關(guān)系關(guān)系模型的存取路徑對用戶透明具有更高的數(shù)據(jù)獨(dú)立性,更好的安全保密性簡化了程序員的工作和數(shù)據(jù)庫開發(fā)建立的工作關(guān)系數(shù)據(jù)模型的優(yōu)缺點(diǎn)(續(xù))缺點(diǎn)存取路徑對用戶透明導(dǎo)致查詢效率往往不如非關(guān)系數(shù)據(jù)模型為提高性能,必須對用戶的查詢請求進(jìn)行優(yōu)化增加了開發(fā)DBMS的難度第一章緒論1.1數(shù)據(jù)庫系統(tǒng)概述1.2數(shù)據(jù)模型1.3數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.4數(shù)據(jù)庫系統(tǒng)的組成1.5小結(jié)1.3數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)從數(shù)據(jù)庫管理系統(tǒng)角度看,數(shù)據(jù)庫系統(tǒng)通常采用三級模式結(jié)構(gòu),是數(shù)據(jù)庫系統(tǒng)內(nèi)部的系統(tǒng)結(jié)構(gòu)從數(shù)據(jù)庫最終用戶角度看(數(shù)據(jù)庫系統(tǒng)外部的體系結(jié)構(gòu)),數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)分為:單用戶結(jié)構(gòu)主從式結(jié)構(gòu)分布式結(jié)構(gòu)客戶/服務(wù)器瀏覽器/應(yīng)用服務(wù)器/數(shù)據(jù)庫服務(wù)器多層結(jié)構(gòu)等數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)(續(xù))1.3.1數(shù)據(jù)庫系統(tǒng)模式的概念1.3.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)1.3.3數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨(dú)立性
1.3.1數(shù)據(jù)庫系統(tǒng)模式的概念“型”和“值”的區(qū)別型(Type)對某一類數(shù)據(jù)的結(jié)構(gòu)和屬性的說明值(Value)是型的一個具體賦值例如學(xué)生記錄型:(學(xué)號,姓名,性別,系別,年齡,籍貫)一個記錄值:(900201,李明,男,計算機(jī),22,江蘇)回顧:關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)
在用戶觀點(diǎn)下,關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表,它由行和列組成。學(xué)生登記表
屬性元組男女男性別192221年齡D01李紅S02D02王偉S03D01張軍S01系號姓名學(xué)號主碼分量關(guān)系模式(男,女)數(shù)據(jù)庫系統(tǒng)模式的概念(續(xù))模式(Schema)數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述是型的描述反映的是數(shù)據(jù)的結(jié)構(gòu)及其聯(lián)系模式是相對穩(wěn)定的實(shí)例(Instance)模式的一個具體值反映數(shù)據(jù)庫某一時刻的狀態(tài)同一個模式可以有很多實(shí)例實(shí)例隨數(shù)據(jù)庫中的數(shù)據(jù)的更新而變動數(shù)據(jù)庫系統(tǒng)模式的概念(續(xù))例如:在學(xué)生選課數(shù)據(jù)庫模式中,包含學(xué)生、課程記錄和學(xué)生選課表的定義
2003年的一個學(xué)生數(shù)據(jù)庫實(shí)例,包含:2003年學(xué)校中所有學(xué)生的記錄學(xué)校開設(shè)的所有課程的記錄所有學(xué)生選課的記錄
2002年度學(xué)生數(shù)據(jù)庫模式對應(yīng)的實(shí)例與
2003年度學(xué)生數(shù)據(jù)庫模式對應(yīng)的實(shí)例是不同的數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)(續(xù))1.3.1數(shù)據(jù)庫系統(tǒng)模式的概念1.3.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)
1.3.3數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨(dú)立性
1.3.2數(shù)據(jù)庫系統(tǒng)的三級模式
學(xué)號姓名性別系別年齡住址出身學(xué)位學(xué)分補(bǔ)貼學(xué)籍科房產(chǎn)科保衛(wèi)科財務(wù)科數(shù)據(jù)庫1.3.2數(shù)據(jù)庫系統(tǒng)的三級模式數(shù)據(jù)庫系統(tǒng)三級模式結(jié)構(gòu)CODASYL(ConferenceOnDataSystemLanguage,美國數(shù)據(jù)系統(tǒng)語言協(xié)商會)提出模式、外模式、內(nèi)模式三級模式的概念,三級模式之間有兩級映象。模式的分級從數(shù)據(jù)庫的用戶觀點(diǎn),即用戶看到的數(shù)據(jù)庫,與數(shù)據(jù)庫的物理方面,即實(shí)際存儲的數(shù)據(jù)庫區(qū)分開來,數(shù)據(jù)庫系統(tǒng)的模式是分級的。提高了數(shù)據(jù)的邏輯獨(dú)立性和物理獨(dú)立性。一、模式(Schema)模式(也稱邏輯模式)數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述所有用戶的公共數(shù)據(jù)視圖,綜合了所有用戶的需求一個數(shù)據(jù)庫只有一個模式模式的地位:是數(shù)據(jù)庫系統(tǒng)模式結(jié)構(gòu)的中間層與數(shù)據(jù)的物理存儲細(xì)節(jié)和硬件環(huán)境無關(guān)與具體的應(yīng)用程序、開發(fā)工具及高級程序設(shè)計語言無關(guān)模式(續(xù))模式的定義數(shù)據(jù)的邏輯結(jié)構(gòu)(數(shù)據(jù)項的名字、類型、取值范圍等)數(shù)據(jù)之間的聯(lián)系數(shù)據(jù)有關(guān)的安全性、完整性要求二、外模式外模式(也稱子模式或用戶模式)數(shù)據(jù)庫用戶(包括應(yīng)用程序員和最終用戶)使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示外模式(續(xù))外模式的地位:介于模式與應(yīng)用之間模式與外模式的關(guān)系:一對多外模式通常是模式的子集一個數(shù)據(jù)庫可以有多個外模式。反映了不同的用戶的應(yīng)用需求、看待數(shù)據(jù)的方式、對數(shù)據(jù)保密的要求對模式中同一數(shù)據(jù),在外模式中的結(jié)構(gòu)、類型、長度、保密級別等都可以不同外模式與應(yīng)用的關(guān)系:一對多同一外模式也可以為某一用戶的多個應(yīng)用系統(tǒng)所使用但一個應(yīng)用程序只能使用一個外模式外模式(續(xù))外模式的用途保證數(shù)據(jù)庫安全性的一個有力措施每個用戶只能看見和訪問所對應(yīng)的外模式中的數(shù)據(jù)1.3.2數(shù)據(jù)庫系統(tǒng)的三級模式
外模式/模式S(S#,SNAME,SEX,AGE,ADDRESS,CREDIT,DEGREE)S(S#,SNAME…ADDRESS)學(xué)籍科S(S#,SNAME…CREDIT)房產(chǎn)科視圖視圖模式三、內(nèi)模式內(nèi)模式(也稱存儲模式)是數(shù)據(jù)物理結(jié)構(gòu)和存儲方式的描述是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式記錄的存儲方式(順序存儲,按照B樹結(jié)構(gòu)存儲,按hash方法存儲)索引的組織方式數(shù)據(jù)是否壓縮存儲數(shù)據(jù)是否加密數(shù)據(jù)存儲記錄結(jié)構(gòu)的規(guī)定一個數(shù)據(jù)庫只有一個內(nèi)模式內(nèi)模式(續(xù))例如學(xué)生記錄,如果按堆存儲,則插入一條新記錄總是放在學(xué)生記錄存儲的最后,如右圖所示內(nèi)模式(續(xù))如果按學(xué)號升序存儲,則插入一條記錄就要找到它應(yīng)在的位置插入,如圖1.29(b)所示如果按照學(xué)生年齡聚簇存放,假如新插入的S3是16歲,則應(yīng)插入的位置如圖1.29(c)所示
圖1.29記錄不同的存儲方式示意圖數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)(續(xù))圖1.28數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)(續(xù))1.3.1數(shù)據(jù)庫系統(tǒng)模式的概念1.3.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)1.3.3數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨(dú)立性
1.3.3數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨(dú)立性三級模式是對數(shù)據(jù)的三個抽象級別二級映象在DBMS內(nèi)部實(shí)現(xiàn)這三個抽象層次的聯(lián)系和轉(zhuǎn)換外模式/模式映像模式/內(nèi)模式映像一、外模式/模式映象模式:描述的是數(shù)據(jù)的全局邏輯結(jié)構(gòu)外模式:描述的是數(shù)據(jù)的局部邏輯結(jié)構(gòu)映象定義通常包含在各自外模式的描述中同一個模式可以有任意多個外模式每一個外模式,數(shù)據(jù)庫系統(tǒng)都有一個外模式/模式映象,定義外模式與模式之間的對應(yīng)關(guān)系外模式/模式映象(續(xù))保證數(shù)據(jù)的邏輯獨(dú)立性當(dāng)模式改變時,數(shù)據(jù)庫管理員修改有關(guān)的外模式/模式映象,使外模式保持不變應(yīng)用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應(yīng)用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨(dú)立性,簡稱數(shù)據(jù)的邏輯獨(dú)立性。1.3.3數(shù)據(jù)庫的二級映像與數(shù)據(jù)獨(dú)立性
NONAMEAGESEX
趙20男錢21女XHXMXBCSRQ
趙男95.07.01
錢女94.03.07CreateViewStud(學(xué)號,姓名,性別,年齡)AsSelectNO,NAME,AGE,SEX,FromstudentCreateViewStud(學(xué)號,姓名,性別,年齡)AsSelectXH,XM,XB,
datediff(year,CSRQ,getdate())Fromstudent學(xué)號姓名性別年齡趙男20
錢女21二、模式/內(nèi)模式映象模式/內(nèi)模式映象定義了數(shù)據(jù)全局邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)之間的對應(yīng)關(guān)系。例如,說明邏輯記錄和字段在內(nèi)部是如何表示的數(shù)據(jù)庫中模式/內(nèi)模式映象是唯一的該映象定義通常包含在模式描述中模式/內(nèi)模式映象(續(xù))保證數(shù)據(jù)的物理獨(dú)立性當(dāng)數(shù)據(jù)庫的存儲結(jié)構(gòu)改變了(例如選用了另一種存儲結(jié)構(gòu)),數(shù)據(jù)庫管理員修改模式/內(nèi)模式映象,使模式保持不變應(yīng)用程序不受影響。保證了數(shù)據(jù)與程序的物理獨(dú)立性,簡稱數(shù)據(jù)的物理獨(dú)立性。CREATEDATABASE[example]ON(NAME='example_D
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版特許經(jīng)營合同for連鎖餐飲品牌with地域限制3篇
- 2024年度夏塘里商業(yè)街3F商鋪?zhàn)赓U合同7篇
- 2024版智慧城市建設(shè)承包勞務(wù)合同模板
- 2024版智能化工廠場院出租合同范本3篇
- 2024版房產(chǎn)銷售溢價預(yù)售監(jiān)管合同3篇
- 2024年生態(tài)農(nóng)業(yè)動物品種引進(jìn)與銷售合同3篇
- 2024版企業(yè)研發(fā)項目原材料采購合同范本3篇
- 2024版旅游度假定金合同糾紛民事起訴狀范本2篇
- 2024年度辦公室轉(zhuǎn)租合同范本(含物業(yè)管理責(zé)任)2篇
- 2024版電梯設(shè)備出口退稅服務(wù)采購合同3篇
- 農(nóng)村活動廣場實(shí)施方案村文化小廣場建設(shè)的實(shí)施方案
- 2024簡易租房合同下載打印
- 統(tǒng)編版(2024)道德與法治七年級上冊:第二單元《成長的時空》第4-7課教案(8課時)
- 2024-2030年中國船只燃料行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報告
- 2024年浙江高考技術(shù)試題(含答案)
- TBSES 001-2024 建設(shè)項目環(huán)境影響后評價技術(shù)指南 污染影響類
- 《財務(wù)會計學(xué)(第14版)》課后參考答案 戴德明
- (2024)醫(yī)師定期考核法律法規(guī)必刷題庫及答案
- 人音版音樂二年級上冊《小紅帽》說課稿
- 人教版(PEP)英語四年級上冊《Unit 1 My classroom》單元教學(xué)設(shè)計 1
- 職業(yè)院?!敖鹫n”建設(shè)方案
評論
0/150
提交評論