數(shù)據(jù)庫系統(tǒng)概論 - 第一章_第1頁
數(shù)據(jù)庫系統(tǒng)概論 - 第一章_第2頁
數(shù)據(jù)庫系統(tǒng)概論 - 第一章_第3頁
數(shù)據(jù)庫系統(tǒng)概論 - 第一章_第4頁
數(shù)據(jù)庫系統(tǒng)概論 - 第一章_第5頁
已閱讀5頁,還剩184頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室An Introduction to Database Systems中國人民大學(xué)信息學(xué)院原版中國人民大學(xué)信息學(xué)院原版華中科技大學(xué)計算機學(xué)院吳海修改版華中科技大學(xué)計算機學(xué)院吳海修改版 School of Computer Science and Technology ,HUST 2016數(shù)據(jù)庫系統(tǒng)概論數(shù)據(jù)庫系統(tǒng)概論計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室教材及參考書教材及參考書(1)(1) 教材教材 王珊,薩師煊:數(shù)據(jù)庫系統(tǒng)概論王珊,薩師煊:數(shù)據(jù)庫系統(tǒng)概論(第五版第五版) 高等教育出版社,高等教育出版社,2014.9 參考書參考書 數(shù)據(jù)庫

2、系統(tǒng)概念數(shù)據(jù)庫系統(tǒng)概念. Abraham, Silberschatz等著,楊冬等著,楊冬青,唐世渭等譯,機械工業(yè)出版社,青,唐世渭等譯,機械工業(yè)出版社, 任何一個版本任何一個版本 其它其它 數(shù)據(jù)庫系統(tǒng)原理教程等數(shù)據(jù)庫系統(tǒng)原理教程等 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室教材及參考書教材及參考書(2)(2) 上機軟件上機軟件 SQL Server 2008/2012/2014/2* Oracle 10g/11g/12c /* 軟件安裝過程中,可能出現(xiàn)一系列問題,請注意旁邊同時保持一臺能夠上網(wǎng)查詢的機器*/計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室學(xué)

3、習(xí)方式學(xué)習(xí)方式 課堂教學(xué) (啟發(fā)式、討論式,考勤做為平時成績之一部分) 讀書 (預(yù)習(xí)、復(fù)習(xí)) 實驗 (綜合練習(xí),課程設(shè)計)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室成績評定成績評定v平時成績 (書面作業(yè)、上機練習(xí)、考勤、綜合練習(xí))v期末考試v總評=平時成績*0.2+期末考試*0.8計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室課程目標(biāo)課程目標(biāo) 了解,并結(jié)合關(guān)系型數(shù)據(jù)庫系統(tǒng)深入理解數(shù)據(jù)庫系統(tǒng)的基本概念,原理和方法。 掌握關(guān)系數(shù)據(jù)模型及關(guān)系數(shù)據(jù)語言,能熟練應(yīng)用SQL語言表達各種數(shù)據(jù)操作。 掌握E-R模型的概念和方法,關(guān)系數(shù)據(jù)庫規(guī)范化理論和數(shù)據(jù)庫設(shè)計方法,通過

4、上機實習(xí)的訓(xùn)練,初步具備進行數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)的能力。 了解數(shù)據(jù)庫系統(tǒng)的查詢優(yōu)化、恢復(fù)、并發(fā)控制等技術(shù)以及最新的數(shù)據(jù)庫技術(shù)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室內(nèi)容安排內(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ù)庫編程計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室內(nèi)容安排內(nèi)容安排(2) 系統(tǒng)篇 第九章 關(guān)系查詢處理和查詢優(yōu)化 第十章 數(shù)據(jù)庫恢復(fù)技術(shù) 第十一章 并發(fā)控制 *第十二章 數(shù)據(jù)庫

5、管理系統(tǒng) 新技術(shù)篇 *第十*章 第一至第十一章是本科專業(yè)的基本教程(書中有*號的部分除外),第十二至第十六章是高級教程計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)庫系統(tǒng)概論數(shù)據(jù)庫系統(tǒng)概論An Introduction to Database Systems第一章第一章 緒論緒論計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室第一章第一章 緒論緒論1.1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述1.2 數(shù)據(jù)模型數(shù)據(jù)模型1.3 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.4 數(shù)據(jù)庫系統(tǒng)的組成數(shù)據(jù)庫系統(tǒng)的組成1.5 小結(jié)小結(jié)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實

6、驗室數(shù)據(jù)庫簡介數(shù)據(jù)庫簡介v 數(shù)據(jù)庫技術(shù)產(chǎn)生于六十年代末,是數(shù)據(jù)管理的最新技術(shù),是計算機科學(xué)的重要分支。v 數(shù)據(jù)庫技術(shù)是信息系統(tǒng)的核心和基礎(chǔ),它的出現(xiàn)極大地促進了計算機應(yīng)用向各行各業(yè)的滲透。v 數(shù)據(jù)庫的建設(shè)規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成為衡量一個國家信息化程度的重要標(biāo)志。計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室第一章第一章 緒論緒論1.1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述 1.1.1 四個基本概念四個基本概念 1.1.2 數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展 1.1.3 數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)庫系統(tǒng)的特點 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟

7、件工程實驗室1.1.1 四個基本概念四個基本概念v數(shù)據(jù)(Data)v數(shù)據(jù)庫(Database)v數(shù)據(jù)庫管理系統(tǒng)(DBMS)v數(shù)據(jù)庫系統(tǒng)(DBS)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室一、數(shù)據(jù)一、數(shù)據(jù)v 人類生存的世界是一個物質(zhì)的世界,同時也是一個信息的世界,描述現(xiàn)實世界信息最準(zhǔn)確的工具是數(shù)據(jù)。v 數(shù)據(jù)的定義 描述事物的符號記錄v 數(shù)據(jù)的種類 文本、圖形、圖像、音頻、視頻、學(xué)生的檔案記錄、貨物的運輸情況等v 數(shù)據(jù)的特點 數(shù)據(jù)與其語義是不可分的計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)舉例數(shù)據(jù)舉例v 數(shù)據(jù)的含義稱為數(shù)據(jù)的語義,數(shù)據(jù)與其語義是不可分

8、的。 例如 93是一個數(shù)據(jù)語義1:學(xué)生某門課的成績語義2:某人的體重語義3:計算機系2003級學(xué)生人數(shù)語義4:請同學(xué)給出。計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)舉例數(shù)據(jù)舉例v數(shù)據(jù)的含義(語義)就是信息,數(shù)據(jù)與其語義不可分(0005794, 601, (0005794, 601, 周周 濟濟, 1, 1946.08.26, 01), 1, 1946.08.26, 01)( (工號工號, , 部門編號部門編號, ,姓名姓名, ,性別性別, ,出生日期出生日期, ,民族民族) )校辦公室校辦公室男男漢族漢族計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室

9、數(shù)據(jù)舉例數(shù)據(jù)舉例v某檔案中的一條記錄(李明,男,197205,江蘇南京市,計算機系,1990) 語義:學(xué)生姓名、性別、出生年月、籍貫、所在院系、入學(xué)時間 解釋:李明是個大學(xué)生,1972年5月出生,江蘇南京市人,1990年考入計算機系 請給出另一個解釋和語義計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)與信息數(shù)據(jù)與信息v信息與數(shù)據(jù)的聯(lián)系 數(shù)據(jù)是信息的符號表示,或稱載體 信息是數(shù)據(jù)的內(nèi)涵,是數(shù)據(jù)的語義解釋 數(shù)據(jù)是符號化的信息 信息是語義化的數(shù)據(jù)v例,一幅黑白圖象 數(shù)據(jù)黑白點陣 信息臉譜計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室更多的思考:信息與知識更多的

10、思考:信息與知識v知識 “行動的能力” “可以輔助我們作出決策或采取行動的有很高價值的一種信息形態(tài)” 可以很快地將信息從一個地方轉(zhuǎn)移到另一個地方,但將知識從一個人轉(zhuǎn)移給另一個人經(jīng)常是很困難和很慢的感知信息學(xué)習(xí)知識計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室更多的思考:信息與知識更多的思考:信息與知識v 信息管理 信息管理通過收集、處理、濃縮信息以達到有效的管理v 知識管理 知識管理的焦點是通過信息的收集、存儲、發(fā)布、重用等獲得人的交流與知識共享達到知識的創(chuàng)新目的 知識管理是一個過程,個人通過這一過程學(xué)習(xí)新知識和獲得新經(jīng)驗,并將這些新知識和新經(jīng)驗反應(yīng)出來,進行共享,以用來促進

11、培養(yǎng)、增強個人的知識和機構(gòu)組織的價值 知識管理應(yīng)該是組織有意識采取的一種戰(zhàn)略,它保證能夠在最需要的時間將最需要的知識傳送給最需要的人。這樣可以幫助人們共享信息,并進而將之通過不同的方式付諸實踐,最終達到提高組織業(yè)績的目的 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室二、數(shù)據(jù)庫二、數(shù)據(jù)庫v 數(shù)據(jù)庫的定義 數(shù)據(jù)庫數(shù)據(jù)庫(Database,簡稱簡稱DB)是是長期儲存長期儲存在計算機內(nèi)、在計算機內(nèi)、有組織有組織的、的、可共享可共享的的大量大量數(shù)據(jù)的集合。數(shù)據(jù)的集合。 數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲的基本對象v 數(shù)據(jù)庫的基本特征 數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存數(shù)據(jù)按一定的數(shù)據(jù)模

12、型組織、描述和儲存 可為各種用戶共享可為各種用戶共享 冗余度較小冗余度較小 數(shù)據(jù)獨立性較高數(shù)據(jù)獨立性較高 易擴展易擴展計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室三、數(shù)據(jù)庫管理系統(tǒng)三、數(shù)據(jù)庫管理系統(tǒng)v 什么是DBMSv 位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。 是基礎(chǔ)軟件,是一個大型復(fù)雜的軟件系統(tǒng) v DBMS的用途 科學(xué)地組織和存儲數(shù)據(jù)、高效地獲取和維護數(shù)據(jù)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室硬件平臺硬件平臺基礎(chǔ)軟件平臺基礎(chǔ)軟件平臺軟件基礎(chǔ)構(gòu)架平臺軟件基礎(chǔ)構(gòu)架平臺應(yīng)用軟件平臺應(yīng)用軟件平臺軟件產(chǎn)品軟件產(chǎn)品協(xié)同軟件協(xié)同軟件辦公軟件辦公軟件 中間件

13、中間件 應(yīng)用服務(wù)器應(yīng)用服務(wù)器數(shù)據(jù)庫在計算機系統(tǒng)中的位置數(shù)據(jù)庫在計算機系統(tǒng)中的位置計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室DBMS的主要功能的主要功能 數(shù)據(jù)定義功能 提供數(shù)據(jù)定義語言(DDL) 定義數(shù)據(jù)庫中的數(shù)據(jù)對象 數(shù)據(jù)組織、存儲和管理 分類組織、存儲和管理各種數(shù)據(jù) 確定組織數(shù)據(jù)的文件結(jié)構(gòu)和存取方式 實現(xiàn)數(shù)據(jù)之間的聯(lián)系 提供多種存取方法提高存取效率計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室DBMS的主要功能的主要功能 數(shù)據(jù)操縱功能數(shù)據(jù)操縱功能提供數(shù)據(jù)操縱語言(DML)實現(xiàn)對數(shù)據(jù)庫的基本操作 (查詢、插入、刪除和修改) 數(shù)據(jù)庫的事務(wù)管理和運行管理數(shù)據(jù)

14、庫的事務(wù)管理和運行管理數(shù)據(jù)庫在建立、運行和維護時由DBMS統(tǒng)一管理和控制保證數(shù)據(jù)的安全性、完整性、多用戶對數(shù)據(jù)的并發(fā)使用發(fā)生故障后的系統(tǒng)恢復(fù)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室DBMS的主要功能的主要功能 數(shù)據(jù)庫的建立和維護功能數(shù)據(jù)庫的建立和維護功能(實用程序?qū)嵱贸绦?數(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ù)庫之間的互訪和互操作計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室四、數(shù)據(jù)庫系統(tǒng)四、數(shù)據(jù)庫系統(tǒng)v 什么是數(shù)據(jù)庫系統(tǒng)(Da

15、tabase System,簡稱,簡稱DBS) 在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成v 數(shù)據(jù)庫系統(tǒng)的構(gòu)成 數(shù)據(jù)庫數(shù)據(jù)庫 數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具) 應(yīng)用系統(tǒng)應(yīng)用系統(tǒng) 數(shù)據(jù)庫管理員數(shù)據(jù)庫管理員 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室 數(shù)據(jù)庫數(shù)據(jù)庫 應(yīng)用系統(tǒng)應(yīng)用系統(tǒng)應(yīng)用開發(fā)工具 操作系統(tǒng) 數(shù)據(jù)庫管理系數(shù)據(jù)庫管理系統(tǒng)統(tǒng) 數(shù)據(jù)庫管理員數(shù)據(jù)庫管理員用戶用戶用戶 數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述 1.1.1 四個基本概念四個

16、基本概念 1.1.2 數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展 1.1.3 數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)庫系統(tǒng)的特點 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.1.21.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展v 什么是數(shù)據(jù)管理 對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索和維護對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索和維護 數(shù)據(jù)處理的中心問題數(shù)據(jù)處理的中心問題v 數(shù)據(jù)管理技術(shù)的發(fā)展過程 人工管理階段人工管理階段(20世紀(jì)世紀(jì)40年代中年代中-50年代中年代中) 文件系統(tǒng)階段文件系統(tǒng)階段(20世紀(jì)世紀(jì)50年代末年代末-60年代中年代中) 數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)

17、階段(20世紀(jì)世紀(jì)60年代末年代末-現(xiàn)在現(xiàn)在)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.1.21.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展手工管理 ( 直接書寫機器語言)00101011 11100101 1100100110101100 11010100 1111000001010010 10010000 10000000文件管理 (程序管理數(shù)據(jù))main()int a,b,c;fopen( );數(shù)據(jù)庫管理(自主管理信息)select * from SinsertdeleteOSDBMS手工管理文件管理數(shù)據(jù)庫管理計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)

18、院數(shù)據(jù)庫與軟件工程實驗室1.1.21.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展學(xué)習(xí)要點v 各階段的技術(shù)及應(yīng)用背景 計算機應(yīng)用范圍 外存儲設(shè)備 數(shù)據(jù)管理軟件v 各個階段的差別體現(xiàn) 誰管理數(shù)據(jù) 數(shù)據(jù)面向誰 數(shù)據(jù)與應(yīng)用的獨立性計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.1.21.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展v數(shù)據(jù)管理技術(shù)的發(fā)展動力 應(yīng)用需求的推動應(yīng)用需求的推動 計算機硬件的發(fā)展計算機硬件的發(fā)展 計算機軟件的發(fā)展計算機軟件的發(fā)展計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室一、人工管理階段一、人工管理階段v時期 20世紀(jì)

19、40年代中-50年代中v產(chǎn)生的背景 應(yīng)用需求科學(xué)計算 硬件水平無直接存取存儲設(shè)備 軟件水平?jīng)]有操作系統(tǒng) 處理方式批處理計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室一、人工管理階段一、人工管理階段 背景 計算機主要用于科學(xué)計算 數(shù)據(jù)量小、結(jié)構(gòu)簡單,如高階方程、曲線擬和等 外存為順序存取設(shè)備 磁帶、卡片、紙帶,沒有磁盤等直接存取設(shè)備 沒有操作系統(tǒng),沒有數(shù)據(jù)管理軟件 用戶用機器指令編碼,通過紙帶機輸入程序和數(shù)據(jù),程序運行完畢后,由用戶取走紙帶和運算結(jié)果,再讓下一用戶上機操作計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室一、人工管理階段一、人工管理階段 特點 用戶

20、完全負責(zé)數(shù)據(jù)管理工作 數(shù)據(jù)的組織、存儲結(jié)構(gòu)、存取方法、輸入輸出等 數(shù)據(jù)完全面向特定的應(yīng)用程序 每個用戶使用自己的數(shù)據(jù),數(shù)據(jù)不保存,用完就撤走 數(shù)據(jù)與程序沒有獨立性 程序中存取數(shù)據(jù)的子程序隨著存儲結(jié)構(gòu)的改變而改變 磁帶的特點 優(yōu)點:廉價地存放大容量數(shù)據(jù) 缺點:順序訪問;1%所需,100%訪問計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室一、人工管理階段一、人工管理階段訪問訪問數(shù)據(jù)數(shù)據(jù)2 2訪問訪問數(shù)據(jù)數(shù)據(jù)1 1訪問訪問數(shù)據(jù)數(shù)據(jù)n n計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室人工管理階段人工管理階段(續(xù)續(xù))v特點 數(shù)據(jù)的管理者:用戶(程序員),數(shù)據(jù)不保存 數(shù)

21、據(jù)面向的對象:某一應(yīng)用程序 數(shù)據(jù)的共享程度:無共享、冗余度極大 數(shù)據(jù)的獨立性:不獨立,完全依賴于程序 數(shù)據(jù)的結(jié)構(gòu)化:無結(jié)構(gòu) 數(shù)據(jù)控制能力:應(yīng)用程序自己控制計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系(人工管理階段人工管理階段) 應(yīng)用程序應(yīng)用程序1數(shù)據(jù)集數(shù)據(jù)集1應(yīng)用程序應(yīng)用程序2數(shù)據(jù)集數(shù)據(jù)集2應(yīng)用程序應(yīng)用程序數(shù)據(jù)集數(shù)據(jù)集n.人工管理階段應(yīng)用程序與數(shù)據(jù)之間的對應(yīng)關(guān)系 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室二、文件系統(tǒng)階段二、文件系統(tǒng)階段v時期 20世紀(jì)50年代末-60年代中v產(chǎn)生的背景 應(yīng)用需求科學(xué)計算、

22、管理 硬件水平磁盤、磁鼓 軟件水平有文件系統(tǒng) 處理方式聯(lián)機實時處理、批處理計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室二、文件系統(tǒng)階段二、文件系統(tǒng)階段 背景 計算機不但用于科學(xué)計算,還用于管理 外存有了磁盤、磁鼓等直接存取設(shè)備 直接存取設(shè)備(DASD)無須順序存取由地址直接訪問所需記錄 有了專門管理數(shù)據(jù)的軟件,一般稱為文件系統(tǒng) 文件存儲空間的管理 目錄管理 文件讀寫管理 文件保護 向用戶提供操作接口計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室二、文件系統(tǒng)階段二、文件系統(tǒng)階段 特點 系統(tǒng)提供一定的數(shù)據(jù)管理功能 存取方法(索引文件、鏈接文件、直接存取文件、倒

23、排文件等) 支持對文件的基本操作(增、刪、改、查等),用戶程序不必考慮物理細節(jié) 數(shù)據(jù)的存取基本上以記錄為單位 數(shù)據(jù)仍是面向應(yīng)用的 一個數(shù)據(jù)文件對應(yīng)一個用戶程序 數(shù)據(jù)與程序有一定的獨立性 文件的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)由系統(tǒng)進行轉(zhuǎn)換,數(shù)據(jù)在存儲上的改變不一定反映在程序上計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室二、文件系統(tǒng)階段二、文件系統(tǒng)階段 存取方式存取方式程序程序1 1程序程序2 2程序程序n n數(shù)據(jù)數(shù)據(jù)2 2數(shù)據(jù)數(shù)據(jù)1 1數(shù)據(jù)數(shù)據(jù)n n計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室二、文件系統(tǒng)階段二、文件系統(tǒng)階段 數(shù)據(jù)與程序的獨立性差 文件系統(tǒng)的出現(xiàn)并沒有

24、從根本上改變數(shù)據(jù)與程序緊密結(jié)合的狀況,數(shù)據(jù)的邏輯結(jié)構(gòu)改變則必須修改應(yīng)用程序 文件系統(tǒng)只是解脫了程序員對物理設(shè)備存取的負擔(dān),它并不理解數(shù)據(jù)的語義,只負責(zé)存儲 數(shù)據(jù)的語義信息只能由程序來解釋,也就是說,數(shù)據(jù)收集以后怎么組織,以及數(shù)據(jù)取出來之后按什么含義應(yīng)用,只有全權(quán)管理它的程序知道。 一個應(yīng)用若想共享另一個應(yīng)用生成的數(shù)據(jù),必須同另一個應(yīng)用溝通,了解數(shù)據(jù)的語義與組織方式計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室二、文件系統(tǒng)階段二、文件系統(tǒng)階段 數(shù)據(jù)的共享性差,冗余度大 數(shù)據(jù)面向應(yīng)用 即使不同應(yīng)用程序所需要的數(shù)據(jù)有部分相同時,也必須建立各自的文件,而不能共享相同的數(shù)據(jù) 數(shù)據(jù)孤立

25、數(shù)據(jù)分散管理,許多文件,許多數(shù)據(jù)格式 數(shù)據(jù)的不一致性 由于數(shù)據(jù)存在很多副本,給數(shù)據(jù)的修改與維護帶來了困難,容易造成數(shù)據(jù)的不一致性計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室文件系統(tǒng)階段文件系統(tǒng)階段v特點數(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ù)的獨立性:獨立性差,數(shù)據(jù)的邏輯結(jié)構(gòu)改變必須 修改應(yīng)用程序數(shù)據(jù)的一致性:所有文件副本必須同時更新計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室文件系統(tǒng)中數(shù)據(jù)的結(jié)構(gòu)文件系統(tǒng)中數(shù)據(jù)的結(jié)構(gòu)v 記錄內(nèi)有結(jié)構(gòu)。v

26、 數(shù)據(jù)的結(jié)構(gòu)是靠程序定義和解釋的。v 數(shù)據(jù)只能是定長的。 可以間接實現(xiàn)數(shù)據(jù)變長要求,但訪問相應(yīng)數(shù)據(jù)的應(yīng)用程序復(fù)雜了。可以間接實現(xiàn)數(shù)據(jù)變長要求,但訪問相應(yīng)數(shù)據(jù)的應(yīng)用程序復(fù)雜了。v 文件間是獨立的,因此數(shù)據(jù)整體無結(jié)構(gòu)。 可以間接實現(xiàn)數(shù)據(jù)整體的有結(jié)構(gòu),但必須在應(yīng)用程序中對描述數(shù)據(jù)可以間接實現(xiàn)數(shù)據(jù)整體的有結(jié)構(gòu),但必須在應(yīng)用程序中對描述數(shù)據(jù)間的聯(lián)系間的聯(lián)系。v 數(shù)據(jù)的最小存取單位是記錄。計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室三、數(shù)據(jù)庫系統(tǒng)階段三、數(shù)據(jù)庫系統(tǒng)階段v時期 20世紀(jì)60年代末以來v產(chǎn)生的背景 應(yīng)用背景大規(guī)模管理 硬件背景大容量磁盤、磁盤陣列 軟件背景有數(shù)據(jù)庫管理系統(tǒng)

27、處理方式聯(lián)機實時處理,分布處理,批處理計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室三、數(shù)據(jù)庫系統(tǒng)階段三、數(shù)據(jù)庫系統(tǒng)階段 背景 計算機管理的數(shù)據(jù)量大,關(guān)系復(fù)雜,共享性要求強(多種應(yīng)用、不同語言共享數(shù)據(jù)) 外存有了大容量磁盤,光盤 軟件價格上升,硬件價格下降,編制和維護軟件及應(yīng)用程序成本相對增加,其中維護的成本更高,力求降低計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室三、數(shù)據(jù)庫系統(tǒng)階段三、數(shù)據(jù)庫系統(tǒng)階段v數(shù)據(jù)庫(舉例) 學(xué)學(xué)生生登登記記表表 學(xué)學(xué) 號號 姓姓 名名 年年 令令 性性 別別 系系 名名 年年 級級 95004 王王小小明明 19 女女 社社會會

28、學(xué)學(xué) 95 95006 黃黃大大鵬鵬 20 男男 商商品品學(xué)學(xué) 95 95008 張張文文斌斌 18 女女 法法律律學(xué)學(xué) 95 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室三、數(shù)據(jù)庫系統(tǒng)階段三、數(shù)據(jù)庫系統(tǒng)階段 現(xiàn)實生活中,人們收集并抽取出一個應(yīng)用所需要的大量數(shù)據(jù)之后,應(yīng)將其保存起來以供進一步加工處理,進一步抽取有用信息。原來的數(shù)據(jù)管理技術(shù)不在適合海量數(shù)據(jù)的管理,數(shù)據(jù)庫技術(shù)逐漸發(fā)展起來。人們借助于計算機和數(shù)據(jù)庫技術(shù),方便和充分地利用這些寶貴的信息資源。計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室三、數(shù)據(jù)庫系統(tǒng)階段三、數(shù)據(jù)庫系統(tǒng)階段v數(shù)據(jù)庫的定義 數(shù)據(jù)庫(D

29、atabase,簡稱DB)是長期儲存在計算機內(nèi)、有組織的、可共享的大量數(shù)據(jù)集合數(shù)據(jù)庫的特征v數(shù)據(jù)庫的特征 數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存 可為各種用戶共享,冗余度較小 數(shù)據(jù)獨立性較高 易擴展計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室三、數(shù)據(jù)庫系統(tǒng)階段三、數(shù)據(jù)庫系統(tǒng)階段 特點 數(shù)據(jù)結(jié)構(gòu)化 數(shù)據(jù)的共享性高,冗余度低,易擴充 數(shù)據(jù)獨立性高 產(chǎn)生了數(shù)據(jù)庫管理系統(tǒng)(DataBase Management System,即DBMS ),數(shù)據(jù)由DBMS統(tǒng)一管理計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室三、數(shù)據(jù)庫系統(tǒng)階段三、數(shù)據(jù)庫系統(tǒng)階段 數(shù)據(jù)庫管理系統(tǒng)(DB

30、MS) 系統(tǒng)軟件,數(shù)據(jù)庫系統(tǒng)的一個重要組成部分 科學(xué)地組織和存儲數(shù)據(jù),高效地獲取和維護數(shù)據(jù) 位于用戶與操作系統(tǒng)之間 具有下述功能: 數(shù)據(jù)定義功能 DDL (如Create) 數(shù)據(jù)操作功能 DML(如Select,Delete,Insert,Update) 數(shù)據(jù)庫的運行管理 數(shù)據(jù)庫的建立和維護功能計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室三、數(shù)據(jù)庫系統(tǒng)階段三、數(shù)據(jù)庫系統(tǒng)階段 數(shù)據(jù)庫觀點 數(shù)據(jù)不是依賴于處理過程的附屬品,而是現(xiàn)實世界中獨立存在的對象數(shù)據(jù)數(shù)據(jù)1 1DBMSDBMS統(tǒng)一存統(tǒng)一存取取數(shù)據(jù)數(shù)據(jù)2 2數(shù)據(jù)數(shù)據(jù)n n程序程序2 2程序程序1 1程序程序n n計算機學(xué)院數(shù)據(jù)

31、庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述 1.1.1 四個基本概念四個基本概念 1.1.2 數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展 1.1.3 數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)庫系統(tǒng)的特點 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.1.3 數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)庫系統(tǒng)的特點v數(shù)據(jù)結(jié)構(gòu)化v數(shù)據(jù)的共享性高,冗余度低,易擴充v數(shù)據(jù)獨立性高v數(shù)據(jù)由DBMS統(tǒng)一管理和控制計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.1.3 數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)庫系統(tǒng)的特點 面向全組織的復(fù)雜的數(shù)據(jù)結(jié)構(gòu) 數(shù)據(jù)庫系統(tǒng)從整體角度看待和描述

32、數(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)系計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)結(jié)構(gòu)化v整體數(shù)據(jù)的結(jié)構(gòu)化整體數(shù)據(jù)的結(jié)構(gòu)化是數(shù)據(jù)庫的主要特征之一 v 整體結(jié)構(gòu)化 不再僅僅針對某一個應(yīng)用,而是面向全組織不再僅僅針對某一個應(yīng)用,而是面向全組織 不僅數(shù)據(jù)內(nèi)部結(jié)構(gòu)化,整體是結(jié)構(gòu)化的,數(shù)據(jù)之間具有聯(lián)系不僅數(shù)據(jù)內(nèi)部結(jié)構(gòu)化

33、,整體是結(jié)構(gòu)化的,數(shù)據(jù)之間具有聯(lián)系v 數(shù)據(jù)庫中實現(xiàn)的是數(shù)據(jù)的真正結(jié)構(gòu)化 數(shù)據(jù)的結(jié)構(gòu)用數(shù)據(jù)的結(jié)構(gòu)用數(shù)據(jù)模型數(shù)據(jù)模型描述,無需程序定義和解釋描述,無需程序定義和解釋 數(shù)據(jù)可以數(shù)據(jù)可以變長變長 數(shù)據(jù)的最小存取單位是數(shù)據(jù)的最小存取單位是數(shù)據(jù)項數(shù)據(jù)項計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.1.3 數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)庫系統(tǒng)的特點 數(shù)據(jù)的冗余度低,易擴充 數(shù)據(jù)面向整個系統(tǒng),而不是面向某一應(yīng)用,數(shù)據(jù)集中管理,數(shù)據(jù)共享,因此冗余度低 節(jié)省存儲空間,減少存取時間,且可避免數(shù)據(jù)之間的不一致性 每個應(yīng)用選用數(shù)據(jù)庫的一個子集,只要重新選取不同子集或者加上一小部分數(shù)據(jù),就可以滿足新的應(yīng)用要求

34、,這就是易擴充性計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.1.3 數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)庫系統(tǒng)的特點 具有較高的數(shù)據(jù)和程序的獨立性 把數(shù)據(jù)庫的定義和描述從應(yīng)用程序中分離出去 數(shù)據(jù)描述是分級的(全局邏輯、局部邏輯、存儲) 數(shù)據(jù)的存取由系統(tǒng)管理,用戶不必考慮存取路徑等細節(jié),從而簡化了應(yīng)用程序計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.1.3 數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)庫系統(tǒng)的特點 統(tǒng)一的數(shù)據(jù)控制功能,數(shù)據(jù)共享程度高 數(shù)據(jù)的安全性控制(Security) 保護數(shù)據(jù)以防止不合法的使用所造成的數(shù)據(jù)泄露和破壞 措施:用戶標(biāo)識與鑒定,存取控制 數(shù)據(jù)的完整性控制(In

35、tegrity) 數(shù)據(jù)的正確性、有效性、相容性 措施:完整性約束條件定義和檢查 并發(fā)控制(Concurrency) 對多用戶的并發(fā)操作加以控制、協(xié)調(diào),防止其互相干擾而得到錯誤的結(jié)果并使數(shù)據(jù)庫完整性遭到破壞 措施:封鎖計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.1.3 數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)庫系統(tǒng)的特點 統(tǒng)一的數(shù)據(jù)控制功能,數(shù)據(jù)共享程度高(續(xù)) 數(shù)據(jù)庫恢復(fù)(Recovery) 把數(shù)據(jù)庫從錯誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)(亦稱一致性狀態(tài)或完整性狀態(tài)) 措施:轉(zhuǎn)儲,鏡像,日志計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)獨立性高數(shù)據(jù)獨立性高v 物理獨立性

36、指用戶的應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。指用戶的應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。當(dāng)數(shù)據(jù)的物理存儲改變了,應(yīng)用程序不用改變當(dāng)數(shù)據(jù)的物理存儲改變了,應(yīng)用程序不用改變。v 邏輯獨立性 指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨立的。數(shù)據(jù)的邏指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨立的。數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不變輯結(jié)構(gòu)改變了,用戶程序也可以不變。v 數(shù)據(jù)獨立性是由DBMS的二級映像功能來保證的計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)由數(shù)據(jù)由DBMS統(tǒng)一管理和控制統(tǒng)一管理和控制v DBMS提供的數(shù)據(jù)控制功能 (1)數(shù)據(jù)的安全

37、性(Security)保護保護數(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)。計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系(數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng))DBMS應(yīng)用程序應(yīng)用程序1應(yīng)用程序應(yīng)用程序2數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫系統(tǒng)階段應(yīng)用程序與數(shù)據(jù)之間的對應(yīng)關(guān)

38、系 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室第一章第一章 緒論緒論1.1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述1.2 數(shù)據(jù)模型數(shù)據(jù)模型1.3 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.4 數(shù)據(jù)庫系統(tǒng)的組成數(shù)據(jù)庫系統(tǒng)的組成1.5 小結(jié)小結(jié)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室 1.2 數(shù)據(jù)模型數(shù)據(jù)模型 1.2.1 兩大類數(shù)據(jù)模型兩大類數(shù)據(jù)模型 1.2.2 概念模型概念模型 1.2.3 數(shù)據(jù)模型三要素數(shù)據(jù)模型三要素 1.2.4 最常用的數(shù)據(jù)模型最常用的數(shù)據(jù)模型 1.2.5 層次模型層次模型 1.2.6 網(wǎng)狀模型網(wǎng)狀模型 1.2.7 關(guān)系模型關(guān)系模型計算機學(xué)院數(shù)據(jù)庫與

39、軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)模型概述數(shù)據(jù)模型概述v 在數(shù)據(jù)庫中用數(shù)據(jù)模型這個工具來抽象、表示和處理抽象、表示和處理現(xiàn)實世界中的數(shù)據(jù)和信息。v 通俗地講數(shù)據(jù)模型就是現(xiàn)實世界的模擬。v 數(shù)據(jù)模型應(yīng)滿足三方面要求 能比較能比較真實真實地模擬現(xiàn)實世界地模擬現(xiàn)實世界 容易容易為人所為人所理解理解 便于在計算機上便于在計算機上實現(xiàn)實現(xiàn)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)模型概述數(shù)據(jù)模型概述 現(xiàn)實世界 存在于人們頭腦之外的客觀世界 例如:倉庫管理中涉及的貨物管理,貨物、貨物的進出以及相應(yīng)的報表、圖表、表格、卡片、單據(jù)等 信息世界 現(xiàn)實世界在人腦中的反映

40、計算機世界 信息在計算機中以數(shù)據(jù)形式存儲計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)模型概述數(shù)據(jù)模型概述現(xiàn)實世界現(xiàn)實世界信息世界信息世界機器世界機器世界計算機世界計算機世界轉(zhuǎn)換轉(zhuǎn)換概念模型概念模型(信息模型)(信息模型)DBMSDBMS相關(guān)相關(guān)的邏輯數(shù)據(jù)的邏輯數(shù)據(jù)模型模型它是按用戶的觀點它是按用戶的觀點來對數(shù)據(jù)和信息建來對數(shù)據(jù)和信息建模,主要用于數(shù)據(jù)模,主要用于數(shù)據(jù)庫設(shè)計。不依賴于庫設(shè)計。不依賴于具體的計算機系統(tǒng)具體的計算機系統(tǒng)認識抽象認識抽象它是按計算機的觀點它是按計算機的觀點對數(shù)據(jù)進行建模,主對數(shù)據(jù)進行建模,主要用于要用于DBMSDBMS的實現(xiàn)。的實現(xiàn)。有網(wǎng)狀、層次

41、、關(guān)系、有網(wǎng)狀、層次、關(guān)系、面向?qū)ο蟮?。面向?qū)ο蟮取S嬎銠C學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)模型概述數(shù)據(jù)模型概述現(xiàn)實世界現(xiàn)實世界信息世界信息世界計算機世計算機世界界概念化概念化形式化形式化用戶用戶計算機計算機應(yīng)用應(yīng)用概念模型概念模型數(shù)據(jù)模型數(shù)據(jù)模型計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)模型概述數(shù)據(jù)模型概述v數(shù)據(jù)模型的概念 數(shù)據(jù)及數(shù)據(jù)間聯(lián)系的表示形式(對現(xiàn)實世界特征的模擬和抽象) 對現(xiàn)實世界特征的模擬和抽象 真實地模擬現(xiàn)實世界 易為人所理解 便于計算機實現(xiàn)v分兩個不同的層次 概念數(shù)據(jù)模型 結(jié)構(gòu)數(shù)據(jù)模型數(shù)據(jù)模型數(shù)據(jù)模型是數(shù)據(jù)庫系是數(shù)據(jù)庫系統(tǒng)

42、中用于提統(tǒng)中用于提供信息表示供信息表示和操作手段和操作手段的形式構(gòu)架的形式構(gòu)架現(xiàn)實世界現(xiàn)實世界信息世界信息世界計算機世計算機世界界計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室數(shù)據(jù)模型概述數(shù)據(jù)模型概述v數(shù)據(jù)模型分成兩個不同的層次 概念數(shù)據(jù)模型概念數(shù)據(jù)模型 也稱信息模型,它是按用戶也稱信息模型,它是按用戶的觀點來對數(shù)據(jù)和信息建模。的觀點來對數(shù)據(jù)和信息建模。 結(jié)構(gòu)數(shù)據(jù)模型結(jié)構(gòu)數(shù)據(jù)模型 它是按計算機系統(tǒng)的觀點對它是按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,主要包括網(wǎng)狀模型、層次模型、數(shù)據(jù)建模,主要包括網(wǎng)狀模型、層次模型、關(guān)系模型等。關(guān)系模型等。計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與

43、軟件工程實驗室數(shù)據(jù)模型概述數(shù)據(jù)模型概述v這種分類是按照對客觀對象的抽象過程-兩步抽象來分的: 現(xiàn)實世界中的客觀對象抽象為概念模型; 把概念模型轉(zhuǎn)換為某一DBMS支持的數(shù)據(jù)模型。 概念模型是現(xiàn)實世界到機器世界的一個中間層次。計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室兩大類數(shù)據(jù)模型兩大類數(shù)據(jù)模型v 數(shù)據(jù)模型分為兩類(分屬兩個不同的層次)(1) 概念模型概念模型 也稱信息模型,它是按用戶的觀點來對數(shù)據(jù)和信息建模,也稱信息模型,它是按用戶的觀點來對數(shù)據(jù)和信息建模,用于數(shù)據(jù)庫設(shè)計。用于數(shù)據(jù)庫設(shè)計。 (2) 邏輯模型和物理模型邏輯模型和物理模型 邏輯模型主要包括網(wǎng)狀模型、層次模型、關(guān)

44、系模型、面向?qū)ο竽P偷?,邏輯模型主要包括網(wǎng)狀模型、層次模型、關(guān)系模型、面向?qū)ο竽P偷?,按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,用于按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,用于DBMS實現(xiàn)實現(xiàn)。物理模型是對數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示方式和物理模型是對數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示方式和存取方法,在磁盤或磁帶上的存儲方式和存取方法。存取方法,在磁盤或磁帶上的存儲方式和存取方法。計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室兩大類數(shù)據(jù)模型兩大類數(shù)據(jù)模型 (續(xù)續(xù))v客觀對象的抽象過程-兩步抽象 現(xiàn)實世界中的客觀對象抽象為概念模型;現(xiàn)實世界中的客觀對象抽象為概念模型; 把概念模

45、型轉(zhuǎn)換為某一把概念模型轉(zhuǎn)換為某一DBMS支持的數(shù)據(jù)模型。支持的數(shù)據(jù)模型。計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室兩大類數(shù)據(jù)模型兩大類數(shù)據(jù)模型 (續(xù)續(xù))DBMS支持的數(shù)據(jù)模型支持的數(shù)據(jù)模型概念模型概念模型認識認識抽象抽象信息世界信息世界機器世界機器世界現(xiàn)實世界中客觀對象的抽象過程現(xiàn)實世界中客觀對象的抽象過程現(xiàn)實世現(xiàn)實世界界現(xiàn)實世界現(xiàn)實世界 概念模型概念模型數(shù)據(jù)庫設(shè)計人員完成數(shù)據(jù)庫設(shè)計人員完成邏輯模型邏輯模型 物理模型物理模型由由DBMS完成完成概念模型概念模型 邏輯模型邏輯模型數(shù)據(jù)庫設(shè)計人員完成數(shù)據(jù)庫設(shè)計人員完成計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實

46、驗室 1.2 數(shù)據(jù)模型數(shù)據(jù)模型 1.2.1 兩大類數(shù)據(jù)模型兩大類數(shù)據(jù)模型 1.2.2 概念模型概念模型 1.2.3 數(shù)據(jù)模型三要素數(shù)據(jù)模型三要素 1.2.4 最常用的數(shù)據(jù)模型最常用的數(shù)據(jù)模型 1.2.5 層次模型層次模型 1.2.6 網(wǎng)狀模型網(wǎng)狀模型 1.2.7 關(guān)系模型關(guān)系模型計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室 1.2.2 概念模型概念模型v信息世界中的基本概念v*兩個實體型之間的聯(lián)系v*兩個以上實體型之間的聯(lián)系v*單個實體型內(nèi)的聯(lián)系v*概念模型的一種表示方法v*一個實例計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室概念模型概念模型v概念模型的

47、用途 概念模型用于信息世界的建模概念模型用于信息世界的建模 是現(xiàn)實世界到機器世界的一個中間層次是現(xiàn)實世界到機器世界的一個中間層次 是數(shù)據(jù)庫設(shè)計的有力工具是數(shù)據(jù)庫設(shè)計的有力工具 數(shù)據(jù)庫設(shè)計人員和用戶之間進行交流的語言數(shù)據(jù)庫設(shè)計人員和用戶之間進行交流的語言v對概念模型的基本要求 較強的語義表達能力較強的語義表達能力 能夠方便、直接地表達應(yīng)用中的各種語義知識能夠方便、直接地表達應(yīng)用中的各種語義知識 簡單、清晰、易于用戶理解簡單、清晰、易于用戶理解計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室一、信息世界中的基本概念一、信息世界中的基本概念(1) 實體(Entity) 客觀存在并可相

48、互區(qū)別的事物稱為實體??梢允蔷唧w的人、事、客觀存在并可相互區(qū)別的事物稱為實體。可以是具體的人、事、物或抽象的概念物或抽象的概念。(2) 屬性(Attribute) 實體所具有的某一特性稱為屬性。一個實體可以由若干個屬性來實體所具有的某一特性稱為屬性。一個實體可以由若干個屬性來刻畫。刻畫。如:學(xué)生實體由學(xué)號、姓名、性別、出生日期、系別等屬性組成(3) 碼(Key) & 實體標(biāo)識符唯一標(biāo)識實體的屬性集稱為碼。唯一標(biāo)識實體的屬性集稱為碼。計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室信息世界中的基本概念信息世界中的基本概念(續(xù)續(xù))(4) 域(Domain) 屬性的取值范圍稱

49、為該屬性的域?qū)傩缘娜≈捣秶Q為該屬性的域。如:性別的域為(男,女) (5) 實體型(Entity Type) 用實體名及其屬性名集合來抽象和刻畫同類實體稱為實用實體名及其屬性名集合來抽象和刻畫同類實體稱為實體型體型(6) 實體集(Entity Set) 同一類型實體的集合稱為實體集同一類型實體的集合稱為實體集計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室信息世界中的基本概念信息世界中的基本概念(續(xù)續(xù))(7) 聯(lián)系(Relationship) 現(xiàn)實世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世界中反映現(xiàn)實世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世界中反映為實體內(nèi)部的聯(lián)系和實體之間的聯(lián)系

50、。為實體內(nèi)部的聯(lián)系和實體之間的聯(lián)系。 實體內(nèi)部實體內(nèi)部的聯(lián)系通常是指組成實體的各屬性之間的聯(lián)系的聯(lián)系通常是指組成實體的各屬性之間的聯(lián)系 實體之間實體之間的聯(lián)系通常是指不同實體集之間的聯(lián)系的聯(lián)系通常是指不同實體集之間的聯(lián)系計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室 1.2 數(shù)據(jù)模型數(shù)據(jù)模型 1.2.1 兩大類數(shù)據(jù)模型兩大類數(shù)據(jù)模型 1.2.2 概念模型概念模型 1.2.3 數(shù)據(jù)模型三要素數(shù)據(jù)模型三要素 1.2.4 最常用的數(shù)據(jù)模型最常用的數(shù)據(jù)模型 1.2.5 層次模型層次模型 1.2.6 網(wǎng)狀模型網(wǎng)狀模型 1.2.7 關(guān)系模型關(guān)系模型計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)

51、院數(shù)據(jù)庫與軟件工程實驗室 1.2.3 數(shù)據(jù)模型的組成要素數(shù)據(jù)模型的組成要素v數(shù)據(jù)結(jié)構(gòu) v數(shù)據(jù)操作 v完整性約束條件計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室 一、一、 數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)v 什么是數(shù)據(jù)結(jié)構(gòu) 描述數(shù)據(jù)庫的組成對象,以及對象之間的聯(lián)系v 描述的內(nèi)容 與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對象 與數(shù)據(jù)之間聯(lián)系有關(guān)的對象v 數(shù)據(jù)結(jié)構(gòu)是對系統(tǒng)靜態(tài)特性的描述,即組成數(shù)據(jù)庫的對象類型。v 在數(shù)據(jù)庫系統(tǒng)中一般按數(shù)據(jù)結(jié)構(gòu)的類型來命名數(shù)據(jù)模型計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室 二、數(shù)據(jù)操作二、數(shù)據(jù)操作 v 數(shù)據(jù)操作 對數(shù)據(jù)庫中各種對象(型)的實例(值)允許執(zhí)

52、行的 操作操作及有關(guān)的操作規(guī)則操作規(guī)則v 數(shù)據(jù)操作的類型 查詢 更新(包括插入、刪除、修改)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室 數(shù)據(jù)操作數(shù)據(jù)操作(續(xù)續(xù)) v 數(shù)據(jù)模型對操作的定義 操作的確切含義 操作符號 操作規(guī)則(如優(yōu)先級) 實現(xiàn)操作的語言v 數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述請舉例說明計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室三、數(shù)據(jù)的完整性約束條件三、數(shù)據(jù)的完整性約束條件 v 數(shù)據(jù)的完整性約束條件 一組完整性規(guī)則的集合。 完整性規(guī)則:給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和儲存規(guī)則 用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)

53、據(jù)的正確、有效、相容。計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室 數(shù)據(jù)的完整性約束條件數(shù)據(jù)的完整性約束條件(續(xù)續(xù))v 數(shù)據(jù)模型對完整性約束條件的定義 反映和規(guī)定本反映和規(guī)定本數(shù)據(jù)模型數(shù)據(jù)模型必須遵守的必須遵守的基本的通用的基本的通用的完整性約束條件。完整性約束條件。例如在關(guān)系模型中,任何關(guān)系必須滿足實體完整性和參照完整性例如在關(guān)系模型中,任何關(guān)系必須滿足實體完整性和參照完整性兩個條件。兩個條件。 提供定義完整性約束條件的機制,以反映提供定義完整性約束條件的機制,以反映具體應(yīng)用具體應(yīng)用所涉及的數(shù)據(jù)所涉及的數(shù)據(jù)必須遵守的特定的語義約束條件必須遵守的特定的語義約束條件。計算機學(xué)

54、院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室 1.2 數(shù)據(jù)模型數(shù)據(jù)模型 1.2.1 兩大類數(shù)據(jù)模型兩大類數(shù)據(jù)模型 1.2.2 數(shù)據(jù)模型的組成要素數(shù)據(jù)模型的組成要素 1.2.3 概念模型概念模型 1.2.4 最常用的數(shù)據(jù)模型最常用的數(shù)據(jù)模型 1.2.5 層次模型層次模型 1.2.6 網(wǎng)狀模型網(wǎng)狀模型 1.2.7 關(guān)系模型關(guān)系模型計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室 1.2.4 最常用的數(shù)據(jù)模型最常用的數(shù)據(jù)模型v 非關(guān)系模型 層次模型層次模型(Hierarchical Model) 網(wǎng)狀模型網(wǎng)狀模型(Network Model)v 關(guān)系模型(Relation

55、al Model) v 面向?qū)ο竽P?Object Oriented Model)v 對象關(guān)系模型(Object Relational Model)計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室1.2.5 層次模型層次模型v 層次模型是數(shù)據(jù)庫系統(tǒng)中最早出現(xiàn)的數(shù)據(jù)模型 v 層次數(shù)據(jù)庫系統(tǒng)的典型代表是IBM公司的IMS(Information Management System)數(shù)據(jù)庫管理系統(tǒng)v 層次模型用樹形結(jié)構(gòu)來表示各類實體以及實體間的聯(lián)系 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室一、一、 層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)v 層次模型 滿足

56、下面兩個條件的基本層次聯(lián)系的集合為層次模型滿足下面兩個條件的基本層次聯(lián)系的集合為層次模型1. 有且只有一個結(jié)點沒有雙親結(jié)點,這個結(jié)點稱為根結(jié)點有且只有一個結(jié)點沒有雙親結(jié)點,這個結(jié)點稱為根結(jié)點2. 根以外的其它結(jié)點有且只有一個雙親結(jié)點根以外的其它結(jié)點有且只有一個雙親結(jié)點v 層次模型中的幾個術(shù)語 根結(jié)點,雙親結(jié)點,兄弟結(jié)點,葉結(jié)點根結(jié)點,雙親結(jié)點,兄弟結(jié)點,葉結(jié)點計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)續(xù)) 1 根結(jié)點根結(jié)點 2 兄弟結(jié)點兄弟結(jié)點 3 葉結(jié)點葉結(jié)點 4 兄弟結(jié)點兄弟結(jié)點 5 葉結(jié)點葉結(jié)點 葉結(jié)點葉結(jié)點圖圖1.1

57、6 一個層次模型的示例一個層次模型的示例計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)續(xù))v 層次模型的特點: 結(jié)點的雙親是唯一的結(jié)點的雙親是唯一的 只能直接處理一對多的實體聯(lián)系只能直接處理一對多的實體聯(lián)系 每個記錄類型可以定義一個排序字段,也稱為碼字段每個記錄類型可以定義一個排序字段,也稱為碼字段 任何記錄值只有按其路徑查看時,才能顯出它的全部意義任何記錄值只有按其路徑查看時,才能顯出它的全部意義 沒有一個子女記錄值能夠脫離雙親記錄值而獨立存在沒有一個子女記錄值能夠脫離雙親記錄值而獨立存在計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機

58、學(xué)院數(shù)據(jù)庫與軟件工程實驗室層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)續(xù))圖1.17 教員學(xué)生層次數(shù)據(jù)庫模型 根結(jié)點根結(jié)點記錄型系的子女結(jié)點記錄型系的子女結(jié)點記錄型教員的雙親結(jié)點記錄型教員的雙親結(jié)點葉結(jié)點葉結(jié)點葉結(jié)點葉結(jié)點字段字段計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)續(xù))圖1.18 教員學(xué)生層次數(shù)據(jù)庫的一個值 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室三、層次模型的數(shù)據(jù)操縱與完整性約束三、層次模型的數(shù)據(jù)操縱與完整性約束 v層次模型的數(shù)據(jù)操縱層次模型的數(shù)據(jù)操縱 查詢 插入 刪除 更新 計算機學(xué)院數(shù)

59、據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室層次模型的數(shù)據(jù)操縱與完整性約束(續(xù))層次模型的數(shù)據(jù)操縱與完整性約束(續(xù))v層次模型的完整性約束條件層次模型的完整性約束條件 無相應(yīng)的雙親結(jié)點值就不能插入子女結(jié)點值 如果刪除雙親結(jié)點值,則相應(yīng)的子女結(jié)點值也被同時刪除 更新操作時,應(yīng)更新所有相應(yīng)記錄,以保證數(shù)據(jù)的一致性計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室四、層次數(shù)據(jù)模型的存儲結(jié)構(gòu)四、層次數(shù)據(jù)模型的存儲結(jié)構(gòu)v鄰接法按照層次樹前序遍歷的順序把所有記錄值依次鄰接存按照層次樹前序遍歷的順序把所有記錄值依次鄰接存放,即通過物理空間的位置相鄰來實現(xiàn)層次順序放,即通過物理空間的位置

60、相鄰來實現(xiàn)層次順序計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室層次數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))層次數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))圖圖1.20 層次數(shù)據(jù)庫及其實例層次數(shù)據(jù)庫及其實例 A1A2C8C6C4B6C9C2B4C14C7C5C3B1A1圖圖1.21 鄰接法鄰接法 按鄰接法存放圖按鄰接法存放圖1.20(b)中以根記錄中以根記錄A1為首的層次為首的層次記錄實例集記錄實例集按鄰接法存放圖1.20(b)中以根記錄A1為首的層次記錄實例集 計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室計算機學(xué)院數(shù)據(jù)庫與軟件工程實驗室層次數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))層次數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))v鏈接法 用指引來反映數(shù)據(jù)之間的層次聯(lián)

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論