2021數(shù)據(jù)庫原理及應(yīng)用概論_第1頁
2021數(shù)據(jù)庫原理及應(yīng)用概論_第2頁
2021數(shù)據(jù)庫原理及應(yīng)用概論_第3頁
2021數(shù)據(jù)庫原理及應(yīng)用概論_第4頁
2021數(shù)據(jù)庫原理及應(yīng)用概論_第5頁
已閱讀5頁,還剩150頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

數(shù)據(jù)庫原理及應(yīng)用概論

2021課程的地位《數(shù)據(jù)庫原理及應(yīng)用》是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)、信息與計(jì)算科學(xué)專業(yè)、信息管理與信息系統(tǒng)專業(yè)學(xué)生的必修專業(yè)課程,本課程的相關(guān)知識(shí)和技能是相關(guān)專業(yè)的學(xué)生必須掌握的基本知識(shí)和基本技能。同時(shí),該課程的有關(guān)知識(shí)也是其他專業(yè)學(xué)生在社會(huì)實(shí)踐中必然涉及的內(nèi)容,是其選修的計(jì)算機(jī)科學(xué)與信息科學(xué)學(xué)科相關(guān)課程中的一門主要課程。課程的任務(wù)和作用考慮到數(shù)據(jù)庫技術(shù)的應(yīng)用領(lǐng)域和當(dāng)今世界的數(shù)據(jù)庫技術(shù)發(fā)展趨勢,要求學(xué)生在學(xué)習(xí)本課程中應(yīng)掌握關(guān)系型數(shù)據(jù)庫的基本理論和實(shí)現(xiàn)方法,了解有關(guān)新技術(shù)的應(yīng)用,并通過相關(guān)的實(shí)驗(yàn)內(nèi)容和課程設(shè)計(jì)環(huán)節(jié)使學(xué)生達(dá)到解決一定規(guī)模的實(shí)際問題的能力,為繼續(xù)學(xué)習(xí)計(jì)算機(jī)其他學(xué)科知識(shí)和今后的工作打下堅(jiān)實(shí)的基礎(chǔ)。課程目標(biāo)本課程系統(tǒng)、完整地講述數(shù)據(jù)庫的基本原理、基本概念和基本技術(shù),關(guān)系數(shù)據(jù)庫理論、數(shù)據(jù)庫系統(tǒng)保護(hù)技術(shù)(數(shù)據(jù)庫恢復(fù)技術(shù)、并發(fā)控制、數(shù)據(jù)庫的安全性、數(shù)據(jù)庫的完整性),使學(xué)生掌握有關(guān)關(guān)系數(shù)據(jù)庫的基本概念和基礎(chǔ)理論,關(guān)系數(shù)據(jù)模型,熟練掌握SQL語言、DBMS實(shí)例及SQL的高級(jí)應(yīng)用;熟悉常用數(shù)據(jù)庫管理系統(tǒng)基本操作;能夠進(jìn)行數(shù)據(jù)庫應(yīng)用系統(tǒng)分析、設(shè)計(jì)、實(shí)施和維護(hù),最終掌握解決實(shí)際問題的數(shù)據(jù)庫程序設(shè)計(jì)思想和養(yǎng)成良好的程序設(shè)計(jì)習(xí)慣,具備用數(shù)據(jù)庫解決實(shí)際問題的思想和眼光教材

《數(shù)據(jù)庫系統(tǒng)概論》(第四版)薩師煊,王珊高等教育出版社,2006.5

AnIntroductiontoDatabaseSystemsC.J.Date機(jī)械工業(yè)出版社

《數(shù)據(jù)庫系統(tǒng)原理》

王能斌等電子工業(yè)出版社

《數(shù)據(jù)庫原理教程》

范明、葉陽東等科學(xué)出版社,2008

王珊朱青《數(shù)據(jù)庫系統(tǒng)概論學(xué)習(xí)指導(dǎo)與習(xí)題解答》高等教育出版社2003年8月

參考書

中國人民大學(xué)數(shù)據(jù)庫系統(tǒng)概論精品課程教學(xué)網(wǎng)站:/

高教出版社立體化教材網(wǎng):http://4A.HEP.EDU.CN上機(jī)軟件MSSQLServer2005上機(jī)參考:相關(guān)ppt《SQLServer2005數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)技術(shù)實(shí)驗(yàn)指導(dǎo)及習(xí)題解答》

朱如龍主編機(jī)械工業(yè)出版社

學(xué)習(xí)方式聽課(啟發(fā)式、討論式)自習(xí)(預(yù)習(xí)、復(fù)習(xí))隨堂測試(綜合練習(xí))考核方式總成績=出勤+筆試成績+作業(yè)成績+上機(jī)實(shí)驗(yàn)和大作業(yè)成績內(nèi)容安排(1)

基礎(chǔ)篇第一章緒論第二章關(guān)系數(shù)據(jù)庫第三章關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL第四章數(shù)據(jù)庫安全性第五章數(shù)據(jù)庫完整性

設(shè)計(jì)與應(yīng)用開發(fā)篇第六章關(guān)系數(shù)據(jù)理論第七章數(shù)據(jù)庫設(shè)計(jì)內(nèi)容安排(2)

系統(tǒng)篇第九章關(guān)系查詢處理和查詢優(yōu)化第十章數(shù)據(jù)庫恢復(fù)技術(shù)第十一章并發(fā)控制數(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é)1.1數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫技術(shù)產(chǎn)生于六十年代末,是數(shù)據(jù)管理的最新技術(shù),也是計(jì)算機(jī)科學(xué)的重要分支。數(shù)據(jù)庫技術(shù)是信息系統(tǒng)的核心和基礎(chǔ),它的出現(xiàn)極大地促進(jìn)了計(jì)算機(jī)應(yīng)用向各行各業(yè)的滲透。數(shù)據(jù)庫的建設(shè)規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成為衡量一個(gè)國家信息化程度的重要標(biāo)志。數(shù)據(jù)庫的地位數(shù)據(jù)庫研究,開發(fā)與應(yīng)用是計(jì)算機(jī)學(xué)科最活躍的領(lǐng)域之一三位圖靈獎(jiǎng)得主CharlesW.Bachman(1973)數(shù)據(jù)庫技術(shù)EdgarF.Codd(1981)關(guān)系數(shù)據(jù)庫系統(tǒng)JamesGray(1998)數(shù)據(jù)庫事務(wù)處理數(shù)據(jù)庫涵蓋了計(jì)算學(xué)科的14個(gè)主流領(lǐng)域之一“信息管理”的主要內(nèi)容1.1.1四個(gè)基本概念數(shù)據(jù)(Data)數(shù)據(jù)庫(Database)數(shù)據(jù)庫管理系統(tǒng)(DBMS)數(shù)據(jù)庫系統(tǒng)(DBS)一、數(shù)據(jù)數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲(chǔ)的基本對象數(shù)據(jù)的定義描述事物的符號(hào)記錄數(shù)據(jù)的種類文本、圖形、圖象、聲音數(shù)據(jù)的特點(diǎn)數(shù)據(jù)與其語義是不可分的數(shù)據(jù)的含義稱為數(shù)據(jù)的語義,數(shù)據(jù)與其語義是不可分的。例如93是一個(gè)數(shù)據(jù)語義1:學(xué)生某門課的成績語義2:某人的體重語義3:計(jì)算機(jī)系2003級(jí)學(xué)生人數(shù)語義4:請同學(xué)給出……數(shù)據(jù)舉例數(shù)據(jù)舉例學(xué)生檔案中的學(xué)生記錄(李明,男,1972,江蘇,計(jì)算機(jī)系,1990)數(shù)據(jù)的形式不能完全表達(dá)其內(nèi)容數(shù)據(jù)的解釋語義:學(xué)生姓名、性別、出生年月、籍貫、所在系別、入學(xué)時(shí)間解釋:李明是個(gè)大學(xué)生,1972年出生,江蘇人,1990年考入計(jì)算機(jī)系請給出另一個(gè)解釋和語義二、數(shù)據(jù)庫人們收集并抽取出一個(gè)應(yīng)用所需要的大量數(shù)據(jù)之后,應(yīng)將其保存起來以供進(jìn)一步加工處理,進(jìn)一步抽取有用信息數(shù)據(jù)庫的定義數(shù)據(jù)庫(Database,簡稱DB)是長期儲(chǔ)存在計(jì)算機(jī)內(nèi)、有組織的、可共享的大量數(shù)據(jù)集合二、數(shù)據(jù)庫數(shù)據(jù)庫的特征數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲(chǔ)存可為各種用戶共享冗余度較小數(shù)據(jù)獨(dú)立性較高易擴(kuò)展二、數(shù)據(jù)庫(舉例)三、數(shù)據(jù)庫管理系統(tǒng)什么是DBMS位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。是基礎(chǔ)軟件,是一個(gè)大型復(fù)雜的軟件系統(tǒng)。DBMS的用途科學(xué)地組織和存儲(chǔ)數(shù)據(jù)、高效地獲取和維護(hù)數(shù)據(jù)DBMS的主要功能數(shù)據(jù)定義功能

提供數(shù)據(jù)定義語言(DDL)

定義數(shù)據(jù)庫中的數(shù)據(jù)對象數(shù)據(jù)組織、存儲(chǔ)和管理

分類組織、存儲(chǔ)和管理各種數(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ù)時(shí)由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)儲(chǔ)介質(zhì)故障恢復(fù)數(shù)據(jù)庫的重組織性能監(jiān)視分析等其它功能

DBMS與網(wǎng)絡(luò)中其它軟件系統(tǒng)的通信兩個(gè)DBMS系統(tǒng)的數(shù)據(jù)轉(zhuǎn)換異構(gòu)數(shù)據(jù)庫之間的互訪和互操作四、數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)的定義數(shù)據(jù)庫系統(tǒng)(DatabaseSystem,簡稱DBS)是指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成。在不引起混淆的情況下常常把數(shù)據(jù)庫系統(tǒng)簡稱為數(shù)據(jù)庫。數(shù)據(jù)庫系統(tǒng)的構(gòu)成數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)應(yīng)用系統(tǒng)數(shù)據(jù)庫管理員數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)構(gòu)成圖示(參看教材page_6圖1.1)用戶用戶用戶應(yīng)用系統(tǒng)應(yīng)用開發(fā)工具操作系統(tǒng)數(shù)據(jù)庫數(shù)據(jù)庫管理員數(shù)據(jù)庫管理系統(tǒng)1.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)處理

對各種數(shù)據(jù)進(jìn)行收集、存儲(chǔ)、加工和傳播的一系列活動(dòng)的總和。數(shù)據(jù)管理是指對數(shù)據(jù)進(jìn)行分類、組織、編碼、存儲(chǔ)、檢索和維護(hù),是數(shù)據(jù)處理的中心問題。數(shù)據(jù)管理經(jīng)歷的三個(gè)階段

人工管理階段:20世紀(jì)50年代中期以前

文件管理階段:至60年代中期

數(shù)據(jù)庫系統(tǒng)階段:60年代后期以來一、人工管理階段時(shí)期40年代中--50年代中產(chǎn)生的背景應(yīng)用需求: 科學(xué)計(jì)算 硬件水平: 無直接存取存儲(chǔ)設(shè)備軟件水平: 無數(shù)據(jù)管理方面的軟件 處理方式: 批處理 人工管理(續(xù))特點(diǎn):

數(shù)據(jù)不保存在計(jì)算機(jī)內(nèi)。

應(yīng)用程序管理數(shù)據(jù)。

數(shù)據(jù)不共享。

數(shù)據(jù)不具有獨(dú)立性。應(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...…...…二、文件系統(tǒng)階段時(shí)期50年代末--60年代中產(chǎn)生的背景應(yīng)用需求 科學(xué)計(jì)算、管理 硬件水平 磁盤、磁鼓 軟件水平 有文件系統(tǒng) 處理方式 聯(lián)機(jī)實(shí)時(shí)處理、批處理

文件系統(tǒng)(續(xù))

特點(diǎn)數(shù)據(jù)以文件形式可長期保存在外部存儲(chǔ)器的磁盤上。由文件系統(tǒng)來管理數(shù)據(jù),提供存取方法進(jìn)行轉(zhuǎn)換,使應(yīng)用程序與數(shù)據(jù)之間有了一定的獨(dú)立性。

應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系(文件系統(tǒng))應(yīng)用程序1文件1應(yīng)用程序2文件2應(yīng)用程序n文件n存取方法...…...…文件系統(tǒng)(續(xù))三個(gè)缺陷:數(shù)據(jù)冗余。數(shù)據(jù)不一致。數(shù)據(jù)聯(lián)系弱。三、數(shù)據(jù)庫系統(tǒng)階段時(shí)期60年代末以來產(chǎn)生的背景應(yīng)用背景 大規(guī)模數(shù)據(jù)管理

硬件背景 大容量磁盤 軟件背景 有數(shù)據(jù)庫管理系統(tǒng) 處理方式 聯(lián)機(jī)實(shí)時(shí)處理,分布處理,批處理

數(shù)據(jù)庫系統(tǒng)(續(xù))特點(diǎn)數(shù)據(jù)結(jié)構(gòu)化。數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充。 數(shù)據(jù)的獨(dú)立性高(高度的物理獨(dú)立性和一定的邏輯獨(dú)立性) 數(shù)據(jù)由DBMS統(tǒng)一管理和控制數(shù)據(jù)結(jié)構(gòu)化整體數(shù)據(jù)的結(jié)構(gòu)化是數(shù)據(jù)庫的主要特征之一整體結(jié)構(gòu)化不再僅僅針對某一個(gè)應(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ù)項(xiàng)數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充數(shù)據(jù)庫系統(tǒng)從整體角度看待和描述數(shù)據(jù),數(shù)據(jù)面向整個(gè)系統(tǒng),可以被多個(gè)用戶、多個(gè)應(yīng)用共享使用。數(shù)據(jù)共享的好處減少數(shù)據(jù)冗余,節(jié)約存儲(chǔ)空間避免數(shù)據(jù)之間的不相容性與不一致性使系統(tǒng)易于擴(kuò)充數(shù)據(jù)獨(dú)立性物理獨(dú)立性

指用戶的應(yīng)用程序與存儲(chǔ)在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨(dú)立的。當(dāng)數(shù)據(jù)的物理存儲(chǔ)改變了,應(yīng)用程序不用改變。邏輯獨(dú)立性

指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨(dú)立的。數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不變。

數(shù)據(jù)獨(dú)立性是由DBMS的二級(jí)映像功能來保證的數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)用戶局部邏輯結(jié)構(gòu)數(shù)據(jù)庫整體邏輯結(jié)構(gòu)數(shù)據(jù)庫物理結(jié)構(gòu)邏輯數(shù)據(jù)獨(dú)立性物理數(shù)據(jù)獨(dú)立性DBMS對數(shù)據(jù)的控制功能數(shù)據(jù)的安全性(Security)保護(hù)使每個(gè)用戶只能按指定方式使用和處理指定數(shù)據(jù),保護(hù)數(shù)據(jù)以防止不合法的使用造成的數(shù)據(jù)的泄密和破壞。數(shù)據(jù)的完整性(Integrity)檢查將數(shù)據(jù)控制在有效的范圍內(nèi),或保證數(shù)據(jù)之間滿足一定的關(guān)系。DBMS對數(shù)據(jù)的控制功能并發(fā)(Concurrency)控制對多用戶的并發(fā)操作加以控制和協(xié)調(diào),防止相互干擾而得到錯(cuò)誤的結(jié)果。數(shù)據(jù)庫恢復(fù)(Recovery)將數(shù)據(jù)庫從錯(cuò)誤狀態(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ù)庫…1.2數(shù)據(jù)模型在數(shù)據(jù)庫中用數(shù)據(jù)模型這個(gè)工具來抽象、表示和處理現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實(shí)世界的模擬數(shù)據(jù)模型應(yīng)滿足以下要求:能比較真實(shí)地模擬現(xiàn)實(shí)世界容易為人所理解便于在計(jì)算機(jī)上實(shí)現(xiàn)1.2數(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.1兩類數(shù)據(jù)模型

1.2.1兩大類數(shù)據(jù)模型數(shù)據(jù)模型分為兩類(分屬兩個(gè)不同的層次)概念模型(信息模型)

按用戶的觀點(diǎn)來對數(shù)據(jù)和信息建模,用于數(shù)據(jù)庫設(shè)計(jì)。(2)

邏輯模型和物理模型

邏輯模型主要包括網(wǎng)狀模型、層次模型、關(guān)系模型、面向?qū)ο竽P偷龋从?jì)算機(jī)系統(tǒng)的觀點(diǎn)對數(shù)據(jù)建模,用于DBMS實(shí)現(xiàn)。物理模型是對數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示方式和存取方法,在磁盤或磁帶上的存儲(chǔ)方式和存取方法。兩大類數(shù)據(jù)模型(續(xù))客觀對象的抽象過程兩步抽象現(xiàn)實(shí)世界中的客觀對象抽象為概念模型;把概念模型轉(zhuǎn)換為某一DBMS支持的數(shù)據(jù)模型。兩大類數(shù)據(jù)模型(續(xù))DBMS支持的數(shù)據(jù)模型概念模型認(rèn)識(shí)抽象信息世界機(jī)器世界現(xiàn)實(shí)世界中客觀對象的抽象過程現(xiàn)實(shí)世界現(xiàn)實(shí)世界概念模型數(shù)據(jù)庫設(shè)計(jì)人員完成邏輯模型物理模型由DBMS完成概念模型邏輯模型數(shù)據(jù)庫設(shè)計(jì)人員完成1.2.2數(shù)據(jù)模型的組成要素?cái)?shù)據(jù)結(jié)構(gòu)數(shù)據(jù)操作數(shù)據(jù)的約束條件

一、數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)定義是所研究對象類型的集合分為兩類對象:與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對象與數(shù)據(jù)之間聯(lián)系有關(guān)的對象數(shù)據(jù)結(jié)構(gòu)是對系統(tǒng)靜態(tài)特性的描述按數(shù)據(jù)結(jié)構(gòu)的類型命名數(shù)據(jù)庫

二、數(shù)據(jù)操作

數(shù)據(jù)操作對數(shù)據(jù)庫中各種對象(型)的實(shí)例(值)允許執(zhí)行的操作的集合(包括操作及有關(guān)的操作規(guī)則)數(shù)據(jù)操作的類型查詢更新(包括插入、刪除、修改)

二、數(shù)據(jù)操作數(shù)據(jù)模型對操作的定義操作的確切含義操作符號(hào)操作規(guī)則(如優(yōu)先級(jí))實(shí)現(xiàn)操作的語言數(shù)據(jù)操作是對系統(tǒng)動(dò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ù)模型對完整性約束條件的定義反映和規(guī)定本數(shù)據(jù)模型必須遵守的基本的通用的完整性約束條件。例如在關(guān)系模型中,任何關(guān)系必須滿足實(shí)體完整性和參照完整性兩個(gè)條件。提供定義完整性約束條件的機(jī)制,以反映具體應(yīng)用所涉及的數(shù)據(jù)必須遵守的特定的語義約束條件。

三、數(shù)據(jù)的完整性約束條件

1.2.3概念模型一、概念模型二、信息世界中的基本概念三、概念模型的表示方法概念模型概念模型的用途概念模型用于信息世界的建模是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層次是數(shù)據(jù)庫設(shè)計(jì)的有力工具數(shù)據(jù)庫設(shè)計(jì)人員和用戶之間進(jìn)行交流的語言對概念模型的基本要求較強(qiáng)的語義表達(dá)能力能夠方便、直接地表達(dá)應(yīng)用中的各種語義知識(shí)簡單、清晰、易于用戶理解一、信息世界中的基本概念

1、實(shí)體(Entity)

客觀存在并可相互區(qū)別的事物稱為實(shí)體

實(shí)體可以為具體的人、事、物,也可以是抽象的概念或聯(lián)系。

例如:一個(gè)學(xué)生,一個(gè)項(xiàng)目,一個(gè)規(guī)劃,教師,課程,學(xué)生的一次選課,職工與單位的工作關(guān)系。

2、屬性(Attribute)

實(shí)體所具有的某一特性稱為屬性。一個(gè)實(shí)體可以由若干個(gè)屬性來刻畫。

例如:學(xué)生的實(shí)體可以由學(xué)號(hào)、姓名、性別、出生年份、系、入學(xué)時(shí)間等屬性組成。

3、碼(key)

唯一標(biāo)識(shí)實(shí)體的屬性集稱為碼.例如學(xué)號(hào)一、信息世界中的基本概念(續(xù))4、域(Domain)

屬性的取值范圍稱為該屬性的域。

5、實(shí)體型(EntityType)

用實(shí)體名及其屬性名集合來抽象和刻畫同類實(shí)體6、實(shí)體值(EntityValue)實(shí)集合中個(gè)體的屬性內(nèi)容,即在結(jié)構(gòu)約束下的取值。是型的一個(gè)具體賦值。一、信息世界中的基本概念(續(xù))7、實(shí)體集(EntitySet)同型實(shí)體的集合稱為實(shí)體集。例如全體學(xué)生實(shí)體型實(shí)體值集合姓名專業(yè)年齡年級(jí)李勇計(jì)算機(jī)系202劉麗數(shù)學(xué)系213張倩中文系192一、信息世界中的基本概念(續(xù))8、聯(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)系實(shí)體型間聯(lián)系兩個(gè)實(shí)體型一對一聯(lián)系(1:1)三個(gè)實(shí)體型一對多聯(lián)系(1:n)一個(gè)實(shí)體型多對多聯(lián)系(m:n)二、兩個(gè)實(shí)體型間的聯(lián)系實(shí)體型1聯(lián)系名實(shí)體型2111:1聯(lián)系實(shí)體型1聯(lián)系名實(shí)體型2mnm:n聯(lián)系實(shí)體型1聯(lián)系名實(shí)體型21n1:n聯(lián)系二、兩個(gè)實(shí)體型間的聯(lián)系

一對一聯(lián)系

如果對于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中至多有一個(gè)實(shí)體與之聯(lián)系,反之亦然,則稱實(shí)體集A與實(shí)體集B具有一對一聯(lián)系。記為1:1。

實(shí)例班級(jí)與班長之間的聯(lián)系:一個(gè)班級(jí)只有一個(gè)正班長一個(gè)班長只在一個(gè)班中任職班級(jí)班級(jí)-班長班長111:1聯(lián)系兩個(gè)實(shí)體型間的聯(lián)系

一對多聯(lián)系如果對于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n≥0)與之聯(lián)系,反之,對于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中至多只有一個(gè)實(shí)體與之聯(lián)系,則稱實(shí)體集A與實(shí)體集B有一對多聯(lián)系記為1:n實(shí)例班級(jí)與學(xué)生之間的聯(lián)系:一個(gè)班級(jí)中有若干名學(xué)生,每個(gè)學(xué)生只在一個(gè)班級(jí)中學(xué)習(xí)班級(jí)組成學(xué)生1n1:n聯(lián)系兩個(gè)實(shí)體型間的聯(lián)系

多對多聯(lián)系(m:n)如果對于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n≥0)與之聯(lián)系,反之,對于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中也有m個(gè)實(shí)體(m≥0)與之聯(lián)系,則稱實(shí)體集A與實(shí)體B具有多對多聯(lián)系。記為m:n實(shí)例課程與學(xué)生之間的聯(lián)系:一門課程同時(shí)有若干個(gè)學(xué)生選修一個(gè)學(xué)生可以同時(shí)選修多門課程課程選修學(xué)生mnm:n聯(lián)系實(shí)例一:兩個(gè)實(shí)體之間的三種聯(lián)系一班二班三班四班王麗劉英謝娜袁敏王麗劉英李偉李芳張濤張江張河M(母親)R(子女)

李芳張濤李偉物理化學(xué)數(shù)學(xué)音樂M(男性)W(女性)S(學(xué)生)C(課程)A(班級(jí))B(班長)兩個(gè)實(shí)體型間的聯(lián)系(示例)多個(gè)實(shí)體型間的聯(lián)系(續(xù))多個(gè)實(shí)體型間的一對多聯(lián)系若實(shí)體集E1,E2,...,En存在聯(lián)系,對于實(shí)體集Ej(j=1,2,...,i-1,i+1,...,n)中的給定實(shí)體,最多只和Ei中的一個(gè)實(shí)體相聯(lián)系,則我們說Ei與E1,E2,...,Ei-1,Ei+1,...,En之間的聯(lián)系是一對多的。多個(gè)實(shí)體型間的1:n聯(lián)系實(shí)體型1聯(lián)系名實(shí)體型21m實(shí)體型3n多個(gè)實(shí)體型間的聯(lián)系(續(xù))實(shí)例

課程、教師與參考書三個(gè)實(shí)體型如果一門課程可以有若干個(gè)教師講授,使用若干本參考書,每一個(gè)教師只講授一門課程,每一本參考書只供一門課程使用課程與教師、參考書之間的聯(lián)系是一對多的課程參考書教員講授1mn多個(gè)實(shí)體型間的一對一聯(lián)系兩個(gè)以上實(shí)體型間的多對多聯(lián)系實(shí)例:供應(yīng)商、項(xiàng)目、零件三個(gè)實(shí)體型一個(gè)供應(yīng)商可以供給多個(gè)項(xiàng)目多種零件每個(gè)項(xiàng)目可以使用多個(gè)供應(yīng)商供應(yīng)的零件每種零件可由不同供應(yīng)商供給供應(yīng)商零件項(xiàng)目供應(yīng)mnp多個(gè)實(shí)體型間聯(lián)系(示例)單個(gè)實(shí)體集內(nèi)各實(shí)體間的聯(lián)系一對多聯(lián)系實(shí)例

職工實(shí)體集內(nèi)部具有領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)的聯(lián)系,某一職工(干部)“領(lǐng)導(dǎo)”若干名職工,一個(gè)職工僅被另外一個(gè)職工直接領(lǐng)導(dǎo),這是一對多的聯(lián)系.一對一聯(lián)系多對多聯(lián)系實(shí)體型1聯(lián)系名mn同一實(shí)體型內(nèi)部的m:n聯(lián)系例:實(shí)體間的多種聯(lián)系實(shí)體集內(nèi)部的聯(lián)系職工工程參加負(fù)責(zé)mn1n零部件職工裝配領(lǐng)導(dǎo)mn1n實(shí)際上,一對一聯(lián)系是一對多聯(lián)系的特例,而一對多聯(lián)系又是多對多聯(lián)系的特例。單個(gè)實(shí)體集內(nèi)各實(shí)體間的聯(lián)系(示例)三、概念模型的一種表示方法概念模型的表示方法很多實(shí)體-聯(lián)系方法(Entity—RelationshipApproach)用E-R圖來描述現(xiàn)實(shí)世界的概念模型E-R方法也稱為E-R模型E-R圖(提供了表示實(shí)體型、屬性和聯(lián)系方法)實(shí)體型用矩形表示,矩形框內(nèi)寫明實(shí)體名。學(xué)生教師E-R圖(續(xù))屬性用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來學(xué)生學(xué)號(hào)年齡性別姓名E-R圖(續(xù))聯(lián)系聯(lián)系本身:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型(1:1、1:n或m:n)

聯(lián)系的屬性:聯(lián)系本身也是一種實(shí)體型,也可以有屬性。如果一個(gè)聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來聯(lián)系屬性的表示方法課程選修學(xué)生mn成績供應(yīng)商零件項(xiàng)目供應(yīng)mnp供應(yīng)量丈夫妻子夫妻姓名年齡職業(yè)職業(yè)姓名年齡婚齡子女?dāng)?shù)11倉庫產(chǎn)品存放倉庫號(hào)地點(diǎn)面積價(jià)格貨號(hào)品名數(shù)量1n例:學(xué)生課程選修學(xué)號(hào)姓名性別學(xué)時(shí)數(shù)課程號(hào)課程名成績助學(xué)金mn職工領(lǐng)導(dǎo)工號(hào)姓名年齡民意測驗(yàn)性別職稱工資1n例:E-R圖(續(xù))E-R圖實(shí)例:P18-P19

某工廠物資管理E-R圖

例:試用E-R圖表示某個(gè)工廠物資管理系統(tǒng)。(1)一個(gè)倉庫可以存放多種零件,一種零件可以存放在多個(gè)倉庫中;(2)一個(gè)倉庫有多個(gè)職工當(dāng)倉庫保管員,一個(gè)職工只能在一個(gè)倉庫工作;(3)倉庫主任領(lǐng)導(dǎo)若干保管員;(4)一個(gè)供應(yīng)商可以供給若干項(xiàng)目多種零件,每個(gè)項(xiàng)目可以使用不同供應(yīng)商供應(yīng)的零件,每種零件可以由不同供應(yīng)商供給。

E-R圖(示例)分析:實(shí)體有倉庫(倉庫號(hào)、面積、電話號(hào)碼)

零件(零件號(hào)、名稱、規(guī)格、單價(jià)、描述)

供應(yīng)商(供應(yīng)商號(hào)、姓名、地址、電話號(hào)碼、帳號(hào))

項(xiàng)目(項(xiàng)目號(hào)、預(yù)算、開工日期)

職工(職工號(hào)、姓名、年齡、職稱)聯(lián)系有倉庫與零件具有多對多的聯(lián)系

倉庫與職工具有一對多的聯(lián)系

職工實(shí)體集中具有一對多的聯(lián)系

供應(yīng)商、項(xiàng)目和零件三者之間具有多對多的聯(lián)系實(shí)體及其聯(lián)系:供應(yīng)商職工倉庫零件項(xiàng)目供應(yīng)領(lǐng)導(dǎo)庫存庫存量供應(yīng)量工作mmn1pn1nn完整實(shí)體聯(lián)系圖:倉庫號(hào)面積電話號(hào)碼職稱年齡姓名職工號(hào)供應(yīng)商職工倉庫零件項(xiàng)目供應(yīng)領(lǐng)導(dǎo)庫存庫存量供應(yīng)量工作mmn1pn1nn零件號(hào)開工日期預(yù)算項(xiàng)目號(hào)名稱規(guī)格單價(jià)帳號(hào)電話號(hào)碼地址姓名供應(yīng)商號(hào)描述目前,數(shù)據(jù)庫領(lǐng)域中最常用的數(shù)據(jù)模型有四種:非關(guān)系模型層次模型(HierarchicalModel)網(wǎng)狀模型(NetworkModel)關(guān)系模型(RelationalModel)面向?qū)ο竽P?ObjectOrientedModel)對象關(guān)系模型(ObjectRelationalModel)1.2.4最常用的數(shù)據(jù)模型

在非關(guān)系模型中,

實(shí)體表示為記錄

屬性表示為數(shù)據(jù)項(xiàng)(或字段)

聯(lián)系表示為記錄之間的兩兩聯(lián)系非關(guān)系模型中數(shù)據(jù)結(jié)構(gòu)的單位是基本層次聯(lián)系。基本層次聯(lián)系:指兩個(gè)記錄以及它們之間的一對多(包括一對一)的聯(lián)系。注:M:N聯(lián)系可分解為若干個(gè)1:N的聯(lián)系。RiRj雙親結(jié)點(diǎn)聯(lián)系名子女結(jié)點(diǎn)Lij1.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)系1.2.5層次模型一、層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)

二、層次數(shù)據(jù)模型的數(shù)據(jù)操縱三、層次數(shù)據(jù)模型的完整性約束

四、層次數(shù)據(jù)模型的存儲(chǔ)結(jié)構(gòu)

五、層次數(shù)據(jù)模型的優(yōu)缺點(diǎn)

一、層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)層次模型滿足以下兩個(gè)條件的基本層次聯(lián)系的集合為層次模型。有且只有一個(gè)結(jié)點(diǎn)沒有雙親結(jié)點(diǎn),這個(gè)結(jié)點(diǎn)稱為根結(jié)點(diǎn);2.根以外的其它結(jié)點(diǎn)有且只有一個(gè)雙親結(jié)點(diǎn)層次模型中的幾個(gè)術(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)一個(gè)層次模型的示例:層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))基本特點(diǎn)結(jié)點(diǎn)的雙親是唯一的只能直接處理一對多的實(shí)體聯(lián)系每個(gè)記錄類型定義一個(gè)排序字段,也稱為碼字段任何記錄值只有按其路徑查看時(shí),才能顯出它的全部意義沒有一個(gè)子女記錄值能夠脫離雙親記錄值而獨(dú)立存在層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))表示方法實(shí)體型:用記錄類型描述。每個(gè)結(jié)點(diǎn)表示一個(gè)記錄類型。屬性:用字段描述。每個(gè)記錄類型可包含若干個(gè)字段。聯(lián)系:用結(jié)點(diǎn)之間的連線表示記錄(類)型之間的

一對多的聯(lián)系實(shí)例:教員-學(xué)生數(shù)據(jù)模型(P22)系編號(hào)系名辦公地點(diǎn)學(xué)號(hào)姓名成績教研室編號(hào)教研室職工號(hào)姓名研究方向系教研室學(xué)生教員D02計(jì)算機(jī)信息樓R01數(shù)據(jù)庫R02信息系統(tǒng)R03網(wǎng)絡(luò)S63871文繼榮A

S63874劉華CS63876張孝AE3102張豪網(wǎng)絡(luò)管理E1101陳芝網(wǎng)絡(luò)安全E3501孟勇并行數(shù)據(jù)庫E1709馮靈數(shù)據(jù)倉庫E2101王大明數(shù)據(jù)庫系教研室學(xué)生教員例:教員學(xué)生層次數(shù)據(jù)庫二、多對多聯(lián)系在層次模型中的表示多對多聯(lián)系在層次模型中的表示用層次模型間接表示多對多聯(lián)系方法將多對多聯(lián)系分解成一對多聯(lián)系分解方法冗余結(jié)點(diǎn)法虛擬結(jié)點(diǎn)法冗余結(jié)點(diǎn)法的優(yōu)點(diǎn):結(jié)構(gòu)清晰,允許結(jié)點(diǎn)改變存儲(chǔ)位置,

缺點(diǎn):需要額外占用存儲(chǔ)空間,有潛在的不一致性。虛擬結(jié)點(diǎn)法的優(yōu)點(diǎn):減少對存儲(chǔ)空間的浪費(fèi),避免產(chǎn)生潛在的不一致性;

缺點(diǎn):結(jié)點(diǎn)改變存儲(chǔ)位置可能引起虛擬結(jié)點(diǎn)中指針的修改。虛擬結(jié)點(diǎn)(指引元)學(xué)號(hào)姓名成績課程號(hào)課程名S-Cmn學(xué)號(hào)姓名成績課程號(hào)課程名學(xué)號(hào)姓名成績課程號(hào)課程名學(xué)號(hào)姓名成績課程號(hào)課程名V.CV.SCS示例:二、層次模型的數(shù)據(jù)操縱

查詢插入刪除更新

數(shù)據(jù)進(jìn)行插入、刪除、修改操作時(shí)要滿足層次模型的完整性約束條件。插入——

若沒有相應(yīng)的雙親結(jié)點(diǎn)值就不能插入子女結(jié)點(diǎn)值刪除——

若刪除雙親結(jié)點(diǎn)值,則相應(yīng)的子女值也被同時(shí)刪除修改——

應(yīng)修改所有相應(yīng)記錄,保證數(shù)據(jù)的一致性三、層次模型的完整性約束層次數(shù)據(jù)模型的存儲(chǔ)結(jié)構(gòu)(續(xù))圖1.20層次數(shù)據(jù)庫及其實(shí)例

…A1A2C8C6C4B6C9C2B4C14C7C5C3B1A1圖1.21鄰接法按鄰接法存放圖1.20(b)中以根記錄A1為首的層次記錄實(shí)例集按鄰接法存放圖1.20(b)中以根記錄A1為首的層次記錄實(shí)例集層次數(shù)據(jù)模型的存儲(chǔ)結(jié)構(gòu)(續(xù))鏈接法用指引來反映數(shù)據(jù)之間的層次聯(lián)系子女-兄弟鏈接法層次序列鏈接法層次數(shù)據(jù)模型的存儲(chǔ)結(jié)構(gòu)(續(xù))子女-兄弟鏈接法每個(gè)記錄設(shè)兩類指針,分別指向最左邊的子女(每個(gè)記錄型對應(yīng)一個(gè))和最近的兄弟A1B6*

B4B1A2C3C14*

C9*C4C6C5C2C7C8*層次數(shù)據(jù)模型的存儲(chǔ)結(jié)構(gòu)(續(xù))層次序列鏈接法按樹的前序穿越順序鏈接各記錄值A(chǔ)1B6C8C6C4C9C2C14C7C5C3B4B1五、層次模型的優(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.5網(wǎng)狀模型網(wǎng)狀數(shù)據(jù)庫系統(tǒng)采用網(wǎng)狀模型作為數(shù)據(jù)的組織方式典型代表是DBTG系統(tǒng):亦稱CODASYL系統(tǒng)70年代由DBTG提出的一個(gè)系統(tǒng)方案奠定了數(shù)據(jù)庫系統(tǒng)的基本概念、方法和技術(shù)實(shí)際系統(tǒng)CullinetSoftwareInc.公司的IDMSUnivac公司的DMS1100Honeywell公司的IDS/2HP公司的IMAGE一、網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)網(wǎng)狀模型在數(shù)據(jù)庫中,滿足下面兩個(gè)條件的基本層次聯(lián)系的集合為網(wǎng)狀模型。1.允許一個(gè)以上的結(jié)點(diǎn)無雙親;2.一個(gè)結(jié)點(diǎn)可以有多于一個(gè)的雙親。一、網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))

R1

R2

R3L1L2

R1

R2L3L1L2

R3L4

R4

R5

分析:允許兩個(gè)結(jié)點(diǎn)之間有多種聯(lián)系(復(fù)合聯(lián)系);層次模型實(shí)際上是網(wǎng)狀模型的一個(gè)特例;為每個(gè)聯(lián)系命名并指出與該聯(lián)系有關(guān)的雙親記錄和子女記錄。

R1

L1L2

R2一、網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))表示方法(與層次數(shù)據(jù)模型相同)實(shí)體型:用記錄類型描述。每個(gè)結(jié)點(diǎn)表示一個(gè)記錄類型。屬性:用字段描述。每個(gè)記錄類型可包含若干個(gè)字段。聯(lián)系:用結(jié)點(diǎn)之間的連線表示記錄(類)型之間的一對多的父子聯(lián)系。一、網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))特點(diǎn)只能直接處理一對多的實(shí)體聯(lián)系每個(gè)記錄類型定義一個(gè)排序字段,也稱為碼字段任何記錄值只有按其路徑查看時(shí),才能顯出它的全部意義一、網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))網(wǎng)狀模型與層次模型的區(qū)別網(wǎng)狀模型允許多個(gè)結(jié)點(diǎn)沒有雙親結(jié)點(diǎn)網(wǎng)狀模型允許結(jié)點(diǎn)有多個(gè)雙親結(jié)點(diǎn)網(wǎng)狀模型允許兩個(gè)結(jié)點(diǎn)之間有多種聯(lián)系(復(fù)合聯(lián)系)網(wǎng)狀模型可以更直接地去描述現(xiàn)實(shí)世界層次模型實(shí)際上是網(wǎng)狀模型的一個(gè)特例一、網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(實(shí)例)學(xué)生宿舍學(xué)生教研室系教師一、網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(實(shí)例)父母人子女樹種植砍伐養(yǎng)育贍養(yǎng)二、網(wǎng)狀模型的數(shù)據(jù)操縱查詢插入刪除更新三、網(wǎng)狀數(shù)據(jù)模型的操縱與完整性約束網(wǎng)狀數(shù)據(jù)庫系統(tǒng)(如DBTG)對數(shù)據(jù)操縱加了一些限制,提供了一定的完整性約束.碼:唯一標(biāo)識(shí)記錄的數(shù)據(jù)項(xiàng)的集合一個(gè)聯(lián)系中雙親記錄與子女記錄之間是一對多聯(lián)系支持雙親記錄和子女記錄之間某些約束條件

四、網(wǎng)狀數(shù)據(jù)模型的存儲(chǔ)結(jié)構(gòu)關(guān)鍵:實(shí)現(xiàn)記錄之間的聯(lián)系常用方法單向鏈接雙向鏈接環(huán)狀鏈接向首鏈接四、網(wǎng)狀數(shù)據(jù)模型的存儲(chǔ)結(jié)構(gòu)(示例)S1S2S3S4C1S1C1AS1C2AS2C1AS2C3BS3C1BS3C2BS4C1AS4C2AS4C3BC2C3例:P27五、網(wǎng)狀模型的優(yōu)缺點(diǎn)優(yōu)點(diǎn)能夠更為直接地描述現(xiàn)實(shí)世界,如一個(gè)結(jié)點(diǎn)可以有多個(gè)雙親具有良好的性能,存取效率較高缺點(diǎn)結(jié)構(gòu)比較復(fù)雜,而且隨著應(yīng)用環(huán)境的擴(kuò)大,數(shù)據(jù)庫的結(jié)構(gòu)就變得越來越復(fù)雜,不利于最終用戶掌握DDL、DML語言復(fù)雜,用戶不容易使用1.2.6關(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ì)算機(jī)廠商新推出的數(shù)據(jù)庫管理系統(tǒng)幾乎都支持關(guān)系模型本課程的重點(diǎn)

在用戶觀點(diǎn)下,關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表.主碼域整數(shù)字符串1,2,3,4,5屬性名元組(行)屬性(列)關(guān)系關(guān)系名學(xué)生登記表一、關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)學(xué)號(hào)姓名年齡性別系年級(jí)8202001張平18男法律28202002王英17女計(jì)算機(jī)28203001郭良18女美術(shù)2………………8302001嚴(yán)瑋16女計(jì)算機(jī)18303010王斌17男物理18303020李強(qiáng)16男文學(xué)1關(guān)系模型的基本概念關(guān)系(Relation)一個(gè)關(guān)系對應(yīng)通常說的一張表。元組(Tuple)表中的一行即為一個(gè)元組。屬性(Attribute)表中的一列即為一個(gè)屬性,給每一個(gè)屬性起一個(gè)名稱,即屬性名。關(guān)系模型的基本概念主碼(Key)表中的某個(gè)屬性組,它可以唯一確定一個(gè)元組。域(Domain)屬性的取值范圍。分量元組中的一個(gè)屬性值。關(guān)系模式對關(guān)系的描述關(guān)系名(屬性1,屬性2,…,屬性n)例如:學(xué)生(學(xué)號(hào),姓名,年齡,性別,系,年級(jí))關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))實(shí)體及實(shí)體間的聯(lián)系的表示方法實(shí)體型:直接用關(guān)系(表)表示。屬性:用屬性名表示。一對一聯(lián)系:隱含在實(shí)體對應(yīng)的關(guān)系中。一對多聯(lián)系:隱含在實(shí)體對應(yīng)的關(guān)系中。多對多聯(lián)系:直接用關(guān)系表示。關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例1學(xué)生、系、系與學(xué)生之間的一對多聯(lián)系:學(xué)生(學(xué)號(hào),姓名,年齡,性別,系號(hào),年級(jí))系(系號(hào),系名,辦公地點(diǎn))例2系、系主任、系與系主任間的一對一聯(lián)系關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例3學(xué)生、課程、學(xué)生與課程之間的多對多聯(lián)系:

學(xué)生(學(xué)號(hào),姓名,年齡,性別,系號(hào),年級(jí))課程(課程號(hào),課程名,學(xué)分)選修(學(xué)號(hào),課程號(hào),成績)關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關(guān)系必須是規(guī)范化的,滿足一定的規(guī)范條件最基本的規(guī)范條件:關(guān)系的每一個(gè)分量必須是一個(gè)不可分的數(shù)據(jù)項(xiàng)。表中套表22831121605012001305講師陳平86051水電房租職務(wù)津貼基本實(shí)發(fā)扣除工資職稱姓名職工號(hào)圖1.27一個(gè)工資表(表中有表)實(shí)例二、關(guān)系模型的數(shù)據(jù)操縱查詢、插入、刪除、更新數(shù)據(jù)操作是集合操作,操作對象和操作結(jié)果都是關(guān)系,即若干元組的集合存取路徑對用戶隱蔽,用戶只要指出“干什么”,不必詳細(xì)說明“怎么干”三、關(guān)系模型的完整性約束實(shí)體完整性參照完整性用戶定義的完整性四、關(guān)系數(shù)據(jù)模型的存儲(chǔ)結(jié)構(gòu)實(shí)體及實(shí)體間的聯(lián)系都用表來表示表以文件形式存儲(chǔ)有的DBMS一個(gè)表對應(yīng)一個(gè)操作系統(tǒng)文件有的DBMS自己設(shè)計(jì)文件結(jié)構(gòu)五、關(guān)系模型的優(yōu)缺點(diǎn)優(yōu)點(diǎn)建立在嚴(yán)格的數(shù)學(xué)概念的基礎(chǔ)上概念單一。數(shù)據(jù)結(jié)構(gòu)簡單、清晰,用戶易懂易用實(shí)體和各類聯(lián)系都用關(guān)系來表示。對數(shù)據(jù)的檢索結(jié)果也是關(guān)系。關(guān)系模型的存取路徑對用戶透明具有更高的數(shù)據(jù)獨(dú)立性,更好的安全保密性簡化了程序員的工作和數(shù)據(jù)庫開發(fā)建立的工作五、關(guān)系模型的優(yōu)缺點(diǎn)(續(xù))缺點(diǎn)存取路徑對用戶透明導(dǎo)致查詢效率往往不如非關(guān)系數(shù)據(jù)模型為提高性能,必須對用戶的查詢請求進(jìn)行優(yōu)化增加了開發(fā)數(shù)據(jù)庫管理系統(tǒng)的難度1.3數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)從數(shù)據(jù)庫管理系統(tǒng)角度看,數(shù)據(jù)庫系統(tǒng)通常采用三級(jí)模式結(jié)構(gòu)———

數(shù)據(jù)庫管理系統(tǒng)內(nèi)部的系統(tǒng)結(jié)構(gòu)從數(shù)據(jù)庫最終用戶角度看,數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)分為:

集中式結(jié)構(gòu)單用戶結(jié)構(gòu)主從式結(jié)構(gòu)分布式結(jié)構(gòu)客戶/服務(wù)器結(jié)構(gòu)瀏覽器/應(yīng)用服務(wù)器/數(shù)據(jù)庫服務(wù)器多層結(jié)構(gòu)等

———

數(shù)據(jù)庫系統(tǒng)外部的體系結(jié)構(gòu)1.3.1數(shù)據(jù)庫系統(tǒng)模式的概念“型”和“值”的概念型(Type)對某一類數(shù)據(jù)的結(jié)構(gòu)和屬性的說明值(Value)是型的一個(gè)具體賦值例如:學(xué)生記錄記錄型:(學(xué)號(hào),姓名,性別,系別,年齡,籍貫)該記錄型的一個(gè)記錄值:(900201,李明,男,計(jì)算機(jī),22,江蘇)數(shù)據(jù)庫系統(tǒng)模式的概念(續(xù))模式(Schema)數(shù)據(jù)庫邏輯結(jié)構(gòu)和特征的描述是型的描述反映的是數(shù)據(jù)的結(jié)構(gòu)及其聯(lián)系模式是相對穩(wěn)定的模式的一個(gè)實(shí)例(Instance)模式的一個(gè)具體值反映數(shù)據(jù)庫某一時(shí)刻的狀態(tài)同一個(gè)模式可以有很多實(shí)例實(shí)例隨數(shù)據(jù)庫中的數(shù)據(jù)的更新而變動(dòng)美國國家標(biāo)準(zhǔn)學(xué)會(huì)(ANSI)在1975年公布的一個(gè)關(guān)于數(shù)據(jù)庫標(biāo)準(zhǔn)報(bào)告提出SPARC分級(jí)結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)的三級(jí)模式結(jié)構(gòu)是指數(shù)據(jù)庫系統(tǒng)是由外模式、模式和內(nèi)模式三級(jí)構(gòu)成內(nèi)模式/模式映象應(yīng)用A應(yīng)用B應(yīng)用C應(yīng)用D應(yīng)用E外模式1外模式2外模式3模式內(nèi)模式數(shù)據(jù)庫外模式/模式映象外模式/模式映象外模式/模式映象DBMS1.3.2數(shù)據(jù)庫系統(tǒng)的三級(jí)模式結(jié)構(gòu)1.模式(Schema)模式(也稱邏輯模式)數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述所有用戶的公共數(shù)據(jù)視圖,綜合了所有用戶的需求一個(gè)數(shù)據(jù)庫只有一個(gè)模式模式的地位:是數(shù)據(jù)庫系統(tǒng)模式結(jié)構(gòu)的中間層與數(shù)據(jù)的物理存儲(chǔ)細(xì)節(jié)和硬件環(huán)境無關(guān)與具體的應(yīng)用程序、開發(fā)工具及高級(jí)程序設(shè)計(jì)語言無關(guān)模式的定義(DBMS提供描述語言(DDL))定義數(shù)據(jù)的邏輯結(jié)構(gòu)(數(shù)據(jù)項(xiàng)的名字、類型、取值范圍等)定義數(shù)據(jù)之間的聯(lián)系定義數(shù)據(jù)有關(guān)的安全性、完整性要求2.外模式(ExternalSchema)外模式(也稱子模式或用戶模式)數(shù)據(jù)庫用戶(包括應(yīng)用程序員和最終用戶)能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示(從某個(gè)角度看到的數(shù)據(jù)特性)外模式(續(xù))外模式的地位:介于模式與應(yīng)用之間模式與外模式的關(guān)系:一對多外模式通常是模式的子集一個(gè)數(shù)據(jù)庫可以有多個(gè)外模式。反映了不同的用戶的應(yīng)用需求、看待數(shù)據(jù)的方式、對數(shù)據(jù)保密的要求對模式中同一數(shù)據(jù),在外模式中的結(jié)構(gòu)、類型、長度、保密級(jí)別等都可以不同外模式與應(yīng)用的關(guān)系:一對多同一外模式也可以為某一用戶的多個(gè)應(yīng)用系統(tǒng)所使用但一個(gè)應(yīng)用程序只能使用一個(gè)外模式外模式(續(xù))外模式的用途保證數(shù)據(jù)庫安全性的一個(gè)有力措施。每個(gè)用戶只能看見和訪問所對應(yīng)的外模式中的數(shù)據(jù)3.內(nèi)模式(InternalSchema)內(nèi)模式(也稱存儲(chǔ)模式)是數(shù)據(jù)物理結(jié)構(gòu)和存儲(chǔ)方式的描述是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式記錄的存儲(chǔ)方式(順序存儲(chǔ),按照B樹結(jié)構(gòu)存儲(chǔ),按hash方法存儲(chǔ))索引的組織方式數(shù)據(jù)是否壓縮存儲(chǔ)數(shù)據(jù)是否加密數(shù)據(jù)存儲(chǔ)記錄結(jié)構(gòu)的規(guī)定一個(gè)數(shù)據(jù)庫只有一個(gè)內(nèi)模式——三個(gè)模式中,模式是內(nèi)模式的邏輯表示;內(nèi)模式是模式的物理實(shí)現(xiàn);外模式則是模式的部分抽取——三個(gè)模式反映了對數(shù)據(jù)庫的三種不同觀點(diǎn):模式表示了概念級(jí)數(shù)據(jù)庫,體現(xiàn)了對數(shù)據(jù)庫的總體觀;內(nèi)模式表示了物理數(shù)據(jù)庫,體現(xiàn)了對數(shù)據(jù)庫的存儲(chǔ)觀;外模式表示了用戶數(shù)據(jù)庫,體現(xiàn)了對數(shù)據(jù)庫的用戶觀——總體觀和存儲(chǔ)觀只有一個(gè),而用戶觀可能有多個(gè),有一個(gè)應(yīng)用就有一個(gè)用戶觀三模式的關(guān)系三級(jí)模式與二級(jí)映象三級(jí)模式是對數(shù)據(jù)的三個(gè)抽象級(jí)別二級(jí)映象在DBMS內(nèi)部實(shí)現(xiàn)這三個(gè)抽象層次的聯(lián)系和轉(zhuǎn)換1.外模式/模式映象定義外模式與模式之間的對應(yīng)關(guān)系每一個(gè)外模式都對應(yīng)一個(gè)外模式/模式映象映象定義通常包含在各自外模式的描述中外模式/模式映象的用途保證數(shù)據(jù)的邏輯獨(dú)立性當(dāng)模式改變時(shí),數(shù)據(jù)庫管理員修改有關(guān)的外模式/模式映象,使外模式保持不變應(yīng)用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應(yīng)用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨(dú)立性,簡稱數(shù)據(jù)的邏輯獨(dú)立性。2.模式/內(nèi)模式映象定義了數(shù)據(jù)庫全局邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)之間的對應(yīng)關(guān)系。例如,說明邏輯記錄和字段在內(nèi)部是如何表示的數(shù)據(jù)庫中模式/內(nèi)模式映象是唯一的該映象定義通常包含在模式描述中模式/內(nèi)模式映象的用途保證數(shù)據(jù)的物理獨(dú)立性當(dāng)數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu)改變了(例如選用了另一種存儲(chǔ)結(jié)構(gòu)),由數(shù)據(jù)庫管理員修改模式/內(nèi)模式映象,可使模式保持不變,從而應(yīng)用程序不受影響,不必改變。保證了數(shù)據(jù)與程序的物理獨(dú)立性,簡稱數(shù)據(jù)的物理獨(dú)立性。小結(jié)外模式/模式映象——數(shù)據(jù)的邏輯獨(dú)立性模式/內(nèi)模式映象——數(shù)據(jù)的物理獨(dú)立性二級(jí)映象換來了用戶使用數(shù)據(jù)庫的方便,最終把用戶對數(shù)據(jù)庫的邏輯操作轉(zhuǎn)換成為對數(shù)據(jù)庫的物理操作采用映象技術(shù)的優(yōu)點(diǎn):-保證了數(shù)據(jù)的獨(dú)立性-方便了用戶使用數(shù)據(jù)庫-有利于數(shù)據(jù)共享-有利于數(shù)據(jù)的安全與保密數(shù)據(jù)獨(dú)立性

一、硬件平臺(tái)及數(shù)據(jù)庫

1、有足夠大的內(nèi)存

2、有足夠大的磁盤等直接存取設(shè)備存放數(shù)據(jù)庫,有足夠的磁帶(或軟盤)作數(shù)據(jù)備份

3、有較高的數(shù)據(jù)傳送率二、軟件

1、DBMS2、支持DBMS運(yùn)行的操作系統(tǒng)

3、具有與數(shù)據(jù)庫接口的高級(jí)語言及其編譯系統(tǒng)

4、以DBMS為核心的應(yīng)用開發(fā)工具

5、為特定應(yīng)用環(huán)境開發(fā)的數(shù)據(jù)庫應(yīng)用系統(tǒng)1.4數(shù)據(jù)庫系統(tǒng)的組成三、人開發(fā)、管理和使用數(shù)據(jù)庫系統(tǒng)的人員主要有:

數(shù)據(jù)庫管理員、系統(tǒng)分析員和數(shù)據(jù)庫設(shè)計(jì)員、應(yīng)用程序員和最終用戶。不同的人員涉及不同的數(shù)據(jù)抽象級(jí)別,具有不同的數(shù)據(jù)視圖,不同的職責(zé)。數(shù)據(jù)表示外模式模式內(nèi)模式DBMSOS應(yīng)用系統(tǒng)DB數(shù)據(jù)抽象級(jí)別軟件系統(tǒng)層次用戶應(yīng)用程序員DBA,系統(tǒng)分析員1.數(shù)據(jù)庫管理員(DBA)具體職責(zé):1.決定數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論