版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)2022-4-51數(shù)據(jù)庫編程:ACCESS,MYSQL,Oracle張國富張國富20122012年年2 2月月2022-4-52你掌握了哪些主流的技術(shù)?oVCASPJavaoMyEclipseoOracle/MySQL/AccessoArm Linux2022-4-53sohu2022-4-54Alibaba2022-4-55淘寶o提供一個查詢功能,賣家可以按條件查詢已賣出商品,當(dāng)銷售額少時怎么實現(xiàn),每天賣出很多時又怎么查詢。給出兩種查詢方案。2022-4-56教材及參考書 教材教材薩師煊,王珊:數(shù)據(jù)庫系統(tǒng)概論薩師煊,王珊:數(shù)據(jù)庫系統(tǒng)概論( (第四版第四版) ) 高等教育出
2、版社,高等教育出版社,2006.5 2006.5 VC 數(shù)據(jù)庫編程三部教學(xué)mysql中文參考手冊 2022-4-57數(shù)據(jù)庫的地位o數(shù)據(jù)庫技術(shù)產(chǎn)生于六十年代末,是數(shù)據(jù)管理的最新技術(shù),是計算機(jī)科學(xué)的重要分支。o數(shù)據(jù)庫技術(shù)是信息系統(tǒng)的核心和基礎(chǔ),它的出現(xiàn)極大地促進(jìn)了計算機(jī)應(yīng)用向各行各業(yè)的滲透。o數(shù)據(jù)庫的建設(shè)規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成為衡量一個國家信息化程度的重要標(biāo)志。2022-4-582022-4-592022-4-5102022-4-5112022-4-5122022-4-5132022-4-514框架o數(shù)據(jù)庫基本知識oSql語言+accessoADO應(yīng)用開發(fā):access,oracl
3、eoMySQL應(yīng)用開發(fā)oSocketSocket編程編程2022-4-515第一章 緒論數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述 2022-4-5161.1.1 四個基本概念o數(shù)據(jù)(Data)o數(shù)據(jù)庫(Database)o數(shù)據(jù)庫管理系統(tǒng)(DBMS)o數(shù)據(jù)庫系統(tǒng)(DBS)2022-4-517一、數(shù)據(jù)o數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲的基本對象o數(shù)據(jù)的定義描述事物的符號記錄o數(shù)據(jù)的種類文本、圖形、圖像、音頻、視頻、學(xué)生的檔案記錄、貨物的運(yùn)輸情況等o數(shù)據(jù)的特點(diǎn)數(shù)據(jù)與其語義是不可分的2022-4-518數(shù)據(jù)舉例o數(shù)據(jù)的含義稱為數(shù)據(jù)的語義,數(shù)據(jù)與其語義是不可分的。例如 93是一個數(shù)據(jù)語義1:學(xué)生某門課的成績語義2:某
4、人的體重語義3:電子信息工程專業(yè)2006級學(xué)生人數(shù)2022-4-519數(shù)據(jù)舉例o學(xué)生檔案中的學(xué)生記錄(李明,男,198805,安徽合肥市,電子信息工程專業(yè),2006)語義:學(xué)生姓名、性別、出生年月、籍貫、所學(xué)專業(yè)、入學(xué)時間解釋:李明是個大學(xué)生,1988年5月出生,安徽合肥市人,2006年考入電子信息工程專業(yè)2022-4-520二、數(shù)據(jù)庫o數(shù)據(jù)庫的定義數(shù)據(jù)庫數(shù)據(jù)庫(Database,DB)(Database,DB)是是長期儲存長期儲存在計算機(jī)內(nèi)、在計算機(jī)內(nèi)、有組織有組織的、的、可共享可共享的的大量大量數(shù)據(jù)的集合。數(shù)據(jù)的集合。o數(shù)據(jù)庫的基本特征數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存數(shù)據(jù)按一定的數(shù)據(jù)模
5、型組織、描述和儲存可為各種用戶共享可為各種用戶共享冗余度較小冗余度較小數(shù)據(jù)獨(dú)立性較高數(shù)據(jù)獨(dú)立性較高易擴(kuò)展易擴(kuò)展2022-4-521三、數(shù)據(jù)庫管理系統(tǒng)o什么是DBMS位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。是基礎(chǔ)軟件,是一個大型復(fù)雜的軟件系統(tǒng) oDBMS的用途科學(xué)地組織和存儲數(shù)據(jù)、高效地獲取和維護(hù)數(shù)據(jù)2022-4-522硬件平臺硬件平臺基礎(chǔ)軟件平臺基礎(chǔ)軟件平臺軟件基礎(chǔ)構(gòu)架平臺軟件基礎(chǔ)構(gòu)架平臺應(yīng)用軟件平臺應(yīng)用軟件平臺軟件產(chǎn)品軟件產(chǎn)品協(xié)同軟件協(xié)同軟件辦公軟件辦公軟件 中間件中間件 應(yīng)用服務(wù)器應(yīng)用服務(wù)器數(shù)據(jù)庫在計算機(jī)系統(tǒng)中的位置數(shù)據(jù)庫在計算機(jī)系統(tǒng)中的位置2022-4-523DBMS的主要功能數(shù)據(jù)定義
6、功能數(shù)據(jù)定義功能 提供數(shù)據(jù)定義語言(DDL) 定義數(shù)據(jù)庫中的數(shù)據(jù)對象數(shù)據(jù)組織、存儲和管理數(shù)據(jù)組織、存儲和管理 分類組織、存儲和管理各種數(shù)據(jù) 確定組織數(shù)據(jù)的文件結(jié)構(gòu)和存取方式 實現(xiàn)數(shù)據(jù)之間的聯(lián)系 提供多種存取方法提高存取效率2022-4-524DBMS的主要功能數(shù)據(jù)操縱功能數(shù)據(jù)操縱功能 提供數(shù)據(jù)操縱語言(DML), 實現(xiàn)對數(shù)據(jù)庫的基本操作 (查詢、插入、刪除和修改查詢、插入、刪除和修改)數(shù)據(jù)庫的事務(wù)管理和運(yùn)行管理數(shù)據(jù)庫的事務(wù)管理和運(yùn)行管理 數(shù)據(jù)庫在建立、運(yùn)行和維護(hù)時由DBMS統(tǒng)一管理和控制,保證數(shù)據(jù)的安全性、完整性、多用戶對數(shù)據(jù)的并發(fā)使用,發(fā)生故障后的系統(tǒng)恢復(fù)2022-4-525DBMS的主要功
7、能數(shù)據(jù)庫的建立和維護(hù)功能數(shù)據(jù)庫的建立和維護(hù)功能( (實用程序?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ù)庫之間的互訪和互操作2022-4-526四、數(shù)據(jù)庫系統(tǒng)o什么是數(shù)據(jù)庫系統(tǒng)(Database SystemDatabase System,簡稱,簡稱DBSDBS) 在計算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成在計算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成o數(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ù)
8、據(jù)庫管理員 2022-4-527 數(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)2022-4-528數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展o什么是數(shù)據(jù)管理對數(shù)據(jù)進(jìn)行分類、組織、編碼、存儲、檢索和維對數(shù)據(jù)進(jìn)行分類、組織、編碼、存儲、檢索和維護(hù)護(hù)數(shù)據(jù)處理的中心問題數(shù)據(jù)處理的中心問題o數(shù)據(jù)管理技術(shù)的發(fā)展過程人工管理階段人工管理階段(20(20世紀(jì)世紀(jì)4040年代中年代中-50-50年代中年代中) )文件系統(tǒng)階段文件系統(tǒng)階段(20(20世紀(jì)世紀(jì)5050年代末年代末-60-60年代中年代中) )數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)
9、階段(20(20世紀(jì)世紀(jì)6060年代末年代末-現(xiàn)在現(xiàn)在) )2022-4-529一、人工管理階段o時期20世紀(jì)40年代中-50年代中o產(chǎn)生的背景應(yīng)用需求科學(xué)計算硬件水平無直接存取存儲設(shè)備軟件水平?jīng)]有操作系統(tǒng)處理方式批處理2022-4-530人工管理階段(續(xù))o特點(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)用程序自己控制2022-4-531應(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ù)
10、集數(shù)據(jù)集n.人工管理階段應(yīng)用程序與數(shù)據(jù)之間的對應(yīng)關(guān)系 2022-4-532二、文件系統(tǒng)階段o時期20世紀(jì)50年代末-60年代中o產(chǎn)生的背景應(yīng)用需求科學(xué)計算、管理硬件水平磁盤、磁鼓軟件水平有文件系統(tǒng)處理方式聯(lián)機(jī)實時處理、批處理2022-4-533文件系統(tǒng)階段(續(xù))v特點(diǎn)數(shù)據(jù)的管理者:文件系統(tǒng),數(shù)據(jù)可長期保存數(shù)據(jù)面向的對象:某一應(yīng)用程序 數(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ù)控制能力:應(yīng)用程序自己控制2022-4-534應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系(文件系統(tǒng)階段)應(yīng)用程序應(yīng)用程序文件文件應(yīng)用程序應(yīng)用程序文
11、件文件2應(yīng)用程序應(yīng)用程序文件文件n存取存取方法方法.文件系統(tǒng)階段應(yīng)用程序與數(shù)據(jù)之間的對應(yīng)關(guān)系 2022-4-535文件系統(tǒng)中數(shù)據(jù)的結(jié)構(gòu)o記錄內(nèi)有結(jié)構(gòu)。o數(shù)據(jù)的結(jié)構(gòu)是靠程序定義和解釋的。o數(shù)據(jù)只能是定長的??梢蚤g接實現(xiàn)數(shù)據(jù)變長要求可以間接實現(xiàn)數(shù)據(jù)變長要求, ,但訪問相應(yīng)數(shù)據(jù)的應(yīng)用程序復(fù)雜但訪問相應(yīng)數(shù)據(jù)的應(yīng)用程序復(fù)雜了。了。o文件間是獨(dú)立的,因此數(shù)據(jù)整體無結(jié)構(gòu)。可以間接實現(xiàn)數(shù)據(jù)整體的有結(jié)構(gòu),但必須在應(yīng)用程序中對描述可以間接實現(xiàn)數(shù)據(jù)整體的有結(jié)構(gòu),但必須在應(yīng)用程序中對描述數(shù)據(jù)間的聯(lián)系數(shù)據(jù)間的聯(lián)系。o數(shù)據(jù)的最小存取單位是記錄。2022-4-536三、數(shù)據(jù)庫系統(tǒng)階段o時期20世紀(jì)60年代末以來o產(chǎn)生的背景
12、應(yīng)用背景大規(guī)模管理硬件背景大容量磁盤、磁盤陣列軟件背景有數(shù)據(jù)庫管理系統(tǒng)處理方式聯(lián)機(jī)實時處理,分布處理,批處理2022-4-5371.1.3 數(shù)據(jù)庫系統(tǒng)的特點(diǎn)o數(shù)據(jù)結(jié)構(gòu)化o數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充o數(shù)據(jù)獨(dú)立性高o數(shù)據(jù)由DBMS統(tǒng)一管理和控制2022-4-538數(shù)據(jù)結(jié)構(gòu)化o整體數(shù)據(jù)的結(jié)構(gòu)化整體數(shù)據(jù)的結(jié)構(gòu)化是數(shù)據(jù)庫的主要特征之一 o整體結(jié)構(gòu)化不再僅僅針對某一個應(yīng)用,而是面向全組織不再僅僅針對某一個應(yīng)用,而是面向全組織不僅數(shù)據(jù)內(nèi)部結(jié)構(gòu)化,整體是結(jié)構(gòu)化的,數(shù)據(jù)之間具不僅數(shù)據(jù)內(nèi)部結(jié)構(gòu)化,整體是結(jié)構(gòu)化的,數(shù)據(jù)之間具有聯(lián)系有聯(lián)系o數(shù)據(jù)庫中實現(xiàn)的是數(shù)據(jù)的真正結(jié)構(gòu)化數(shù)據(jù)的結(jié)構(gòu)用數(shù)據(jù)的結(jié)構(gòu)用數(shù)據(jù)模型數(shù)據(jù)模型
13、描述,無需程序定義和解釋描述,無需程序定義和解釋數(shù)據(jù)可以數(shù)據(jù)可以變長變長; ;數(shù)據(jù)的最小存取單位是數(shù)據(jù)的最小存取單位是數(shù)據(jù)項數(shù)據(jù)項2022-4-539數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充o數(shù)據(jù)庫系統(tǒng)從整體角度看待和描述數(shù)據(jù),數(shù)據(jù)面向整個系統(tǒng),可以被多個用戶、多個應(yīng)用共享使用。o數(shù)據(jù)共享的好處減少數(shù)據(jù)冗余,節(jié)約存儲空間避免數(shù)據(jù)之間的不相容性與不一致性 使系統(tǒng)易于擴(kuò)充2022-4-540數(shù)據(jù)獨(dú)立性高o物理獨(dú)立性指用戶的應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是指用戶的應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨(dú)立的。當(dāng)數(shù)據(jù)的物理存儲改變了,應(yīng)用程序不相互獨(dú)立的。當(dāng)數(shù)據(jù)的物理存儲改變了,應(yīng)用程序不用改變用改
14、變。o邏輯獨(dú)立性指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨(dú)立的。指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨(dú)立的。數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不變數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不變。2022-4-541數(shù)據(jù)由DBMS統(tǒng)一管理和控制oDBMS提供的數(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ù)(Recover
15、y)將數(shù)據(jù)庫從錯誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)。2022-4-542應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系(數(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)系 2022-4-543數(shù)據(jù)模型o在數(shù)據(jù)庫中用數(shù)據(jù)模型這個工具來抽象、表示和抽象、表示和處理處理現(xiàn)實世界中的數(shù)據(jù)和信息。o通俗地講數(shù)據(jù)模型就是現(xiàn)實世界的模擬。o數(shù)據(jù)模型應(yīng)滿足三方面要求能比較能比較真實真實地模擬現(xiàn)實世界地模擬現(xiàn)實世界容易容易為人所為人所理解理解便于在計算機(jī)上便于在計算機(jī)上實現(xiàn)實現(xiàn)2022-4-544 1.2.1 兩大類數(shù)據(jù)模型o數(shù)據(jù)模型分為兩類(分屬兩個不同的層次)(1) (1)
16、 概念模型概念模型 也稱信息模型,它是按用戶的觀點(diǎn)來對數(shù)也稱信息模型,它是按用戶的觀點(diǎn)來對數(shù)據(jù)和信息建模,用于數(shù)據(jù)庫設(shè)計。據(jù)和信息建模,用于數(shù)據(jù)庫設(shè)計。 (2) (2) 邏輯模型和物理模型邏輯模型和物理模型 邏輯模型主要包括網(wǎng)狀模型、層次模型、關(guān)系模型、面邏輯模型主要包括網(wǎng)狀模型、層次模型、關(guān)系模型、面向?qū)ο竽P偷龋从嬎銠C(jī)系統(tǒng)的觀點(diǎn)對數(shù)據(jù)建模,用于向?qū)ο竽P偷?,按計算機(jī)系統(tǒng)的觀點(diǎn)對數(shù)據(jù)建模,用于DBMSDBMS實現(xiàn)實現(xiàn)。 物理模型是對數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內(nèi)部物理模型是對數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示方式和存取方法,在磁盤或磁帶上的存儲方式和的表示方式和存取方法,在磁盤
17、或磁帶上的存儲方式和存取方法。存取方法。2022-4-545兩大類數(shù)據(jù)模型 (續(xù))o客觀對象的抽象過程-兩步抽象現(xiàn)實世界中的客觀對象抽象為概念模型;現(xiàn)實世界中的客觀對象抽象為概念模型;把概念模型轉(zhuǎn)換為某一把概念模型轉(zhuǎn)換為某一DBMSDBMS支持的數(shù)據(jù)模型。支持的數(shù)據(jù)模型。2022-4-546兩大類數(shù)據(jù)模型 (續(xù))DBMS支持的數(shù)據(jù)模型支持的數(shù)據(jù)模型概念模型概念模型認(rèn)識認(rèn)識抽象抽象信息世界信息世界機(jī)器世界機(jī)器世界現(xiàn)實世界中客觀對象的抽象過程現(xiàn)實世界中客觀對象的抽象過程現(xiàn)實世界現(xiàn)實世界 概念模型概念模型數(shù)據(jù)庫設(shè)計人員完成數(shù)據(jù)庫設(shè)計人員完成邏輯模型邏輯模型 物理模型物理模型由由DBMS完成完成概念模
18、型概念模型 邏輯模型邏輯模型數(shù)據(jù)庫設(shè)計人員完成數(shù)據(jù)庫設(shè)計人員完成2022-4-547 1.2.2 數(shù)據(jù)模型的組成要素o數(shù)據(jù)結(jié)構(gòu) o數(shù)據(jù)操作 o完整性約束條件2022-4-548 一、 數(shù)據(jù)結(jié)構(gòu)o什么是數(shù)據(jù)結(jié)構(gòu)描述數(shù)據(jù)庫的組成對象,以及對象之間的聯(lián)系o描述的內(nèi)容與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對象與數(shù)據(jù)之間聯(lián)系有關(guān)的對象o數(shù)據(jù)結(jié)構(gòu)是對系統(tǒng)靜態(tài)特性的描述2022-4-549 二、數(shù)據(jù)操作 o數(shù)據(jù)操作對數(shù)據(jù)庫中各種對象(型)的實例(值)允許執(zhí)行的操作操作及有關(guān)的操作規(guī)則操作規(guī)則o數(shù)據(jù)操作的類型查詢更新(包括插入、刪除、修改)2022-4-550 數(shù)據(jù)操作(續(xù)) o數(shù)據(jù)模型對操作的定義操作的確切含義操作符
19、號操作規(guī)則(如優(yōu)先級)實現(xiàn)操作的語言o數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述2022-4-551三、數(shù)據(jù)的完整性約束條件 o數(shù)據(jù)的完整性約束條件一組完整性規(guī)則的集合。完整性規(guī)則:給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和儲存規(guī)則用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。2022-4-552 數(shù)據(jù)的完整性約束條件(續(xù))o數(shù)據(jù)模型對完整性約束條件的定義反映和規(guī)定本反映和規(guī)定本數(shù)據(jù)模型數(shù)據(jù)模型必須遵守的必須遵守的基本的通用的基本的通用的完整完整性約束條件。例如在關(guān)系模型中,任何關(guān)系必須滿足性約束條件。例如在關(guān)系模型中,任何關(guān)系必須滿足實體完整性和參照完整性兩個條件。實體完
20、整性和參照完整性兩個條件。提供定義完整性約束條件的機(jī)制,以反映提供定義完整性約束條件的機(jī)制,以反映具體應(yīng)用具體應(yīng)用所所涉及的數(shù)據(jù)必須遵守的特定的語義約束條件涉及的數(shù)據(jù)必須遵守的特定的語義約束條件。2022-4-553 1.2.3 概念模型o信息世界中的基本概念o兩個實體型之間的聯(lián)系o兩個以上實體型之間的聯(lián)系o單個實體型內(nèi)的聯(lián)系o概念模型的一種表示方法o一個實例2022-4-554概念模型o概念模型的用途概念模型用于信息世界的建模概念模型用于信息世界的建模是現(xiàn)實世界到機(jī)器世界的一個中間層次是現(xiàn)實世界到機(jī)器世界的一個中間層次是數(shù)據(jù)庫設(shè)計的有力工具是數(shù)據(jù)庫設(shè)計的有力工具數(shù)據(jù)庫設(shè)計人員和用戶之間進(jìn)行交
21、流的語言數(shù)據(jù)庫設(shè)計人員和用戶之間進(jìn)行交流的語言o對概念模型的基本要求較強(qiáng)的語義表達(dá)能力較強(qiáng)的語義表達(dá)能力能夠方便、直接地表達(dá)應(yīng)用中的各種語義知識能夠方便、直接地表達(dá)應(yīng)用中的各種語義知識簡單、清晰、易于用戶理解簡單、清晰、易于用戶理解2022-4-555一、信息世界中的基本概念(1) 實體(Entity) 客觀存在并可相互區(qū)別的事物稱為實體。客觀存在并可相互區(qū)別的事物稱為實體??梢允蔷唧w的人、事、物或抽象的概念可以是具體的人、事、物或抽象的概念。(2) 屬性(Attribute) 實體所具有的某一特性稱為屬性。實體所具有的某一特性稱為屬性。一個實體可以由若干個屬性來刻畫。一個實體可以由若干個屬性
22、來刻畫。 (3) 碼(Key) 唯一標(biāo)識實體的屬性集稱為碼。唯一標(biāo)識實體的屬性集稱為碼。2022-4-556信息世界中的基本概念(續(xù))(4) 域(Domain) 屬性的取值范圍稱為該屬性的域?qū)傩缘娜≈捣秶Q為該屬性的域。 (5) 實體型(Entity Type) 用實體名及其屬性名集合來抽象和刻畫同類實用實體名及其屬性名集合來抽象和刻畫同類實體稱為實體型體稱為實體型(6) 實體集(Entity Set) 同一類型實體的集合稱為實體集同一類型實體的集合稱為實體集2022-4-557信息世界中的基本概念(續(xù))(7) 聯(lián)系(Relationship) 現(xiàn)實世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世現(xiàn)實
23、世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世界中反映為實體內(nèi)部的聯(lián)系和實體之間的聯(lián)系。界中反映為實體內(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)系2022-4-558二、兩個實體型之間的聯(lián)系實體型實體型A聯(lián)系名聯(lián)系名實體型實體型B111:1聯(lián)系聯(lián)系實體型實體型A聯(lián)系名聯(lián)系名1n1:n聯(lián)系聯(lián)系實體型實體型A實體型實體型B聯(lián)系名聯(lián)系名mnm:n聯(lián)系聯(lián)系實體型實體型B用圖形來表示兩個實體型之間的這三類聯(lián)系用圖形來表示兩個實體型之間的這三類聯(lián)系
24、2022-4-559二、兩個實體型之間的聯(lián)系(續(xù)) o一對一聯(lián)系(1:1) 實例一個班級只有一個正班長一個班級只有一個正班長一個班長只在一個班中任職一個班長只在一個班中任職定義:定義: 如果對于實體集如果對于實體集A A中的每一個實體,中的每一個實體,實體集實體集B B中至多有一個(也可以沒有)中至多有一個(也可以沒有)實體與之聯(lián)系,反之亦然,實體與之聯(lián)系,反之亦然,則稱實則稱實體集體集A A與實體集與實體集B B具有一對一聯(lián)系,具有一對一聯(lián)系,記為記為1:11:1 班級班級班級班級-班長班長班長班長111:1聯(lián)系聯(lián)系2022-4-560兩個實體型之間的聯(lián)系 (續(xù))o一對多聯(lián)系(1:n)實例一
25、個班級中有若干名學(xué)生,一個班級中有若干名學(xué)生,每個學(xué)生只在一個班級中學(xué)習(xí)每個學(xué)生只在一個班級中學(xué)習(xí)定義:如果對于實體集如果對于實體集A A中的每一個實體,中的每一個實體,實體集實體集B B中有中有n n個實體(個實體(n0n0)與之)與之聯(lián)系,反之,對于實體集聯(lián)系,反之,對于實體集B B中的每一中的每一個實體,實體集個實體,實體集A A中至多只有一個實中至多只有一個實體與之聯(lián)系,則稱體與之聯(lián)系,則稱實體集實體集A A與實體集與實體集B B有一對多聯(lián)系,記為有一對多聯(lián)系,記為1:n1:n班級班級組成組成學(xué)生學(xué)生1n1:n聯(lián)系聯(lián)系2022-4-561兩個實體型之間的聯(lián)系 (續(xù))o多對多聯(lián)系(m:n
26、)實例課程與學(xué)生之間的聯(lián)系:課程與學(xué)生之間的聯(lián)系:一門課程同時有若干個學(xué)生選修一門課程同時有若干個學(xué)生選修一個學(xué)生可以同時選修多門課程一個學(xué)生可以同時選修多門課程定義:如果對于實體集如果對于實體集A A中的每一個實體,實中的每一個實體,實體集體集B B中有中有n n個實體(個實體(n0n0)與之聯(lián))與之聯(lián)系,反之,對于實體集系,反之,對于實體集B B中的每一個中的每一個實 體 , 實 體 集實 體 , 實 體 集 A A 中 也 有中 也 有 m m 個 實 體個 實 體(m0m0)與之聯(lián)系,則稱實體集)與之聯(lián)系,則稱實體集A A與與實體實體B B具有多對多聯(lián)系,記為具有多對多聯(lián)系,記為m:n
27、m:n課程課程選修選修學(xué)生學(xué)生mnm:n聯(lián)系聯(lián)系2022-4-562三、兩個以上實體型之間的聯(lián)系o兩個以上實體型之間一對多聯(lián)系若實體集若實體集E E1 1,E E2 2,.,E En n存在聯(lián)系,對于存在聯(lián)系,對于實體集實體集E Ej j(j=1j=1,2 2,.,i-1i-1,i+1i+1,.,n n)中的給定實體,最多只和)中的給定實體,最多只和E Ei i中的一個實中的一個實體相聯(lián)系,則我們說體相聯(lián)系,則我們說E Ei i與與E E1 1,E E2 2,.,E Ei-i-1 1,E Ei+1i+1,.,E En n之間的聯(lián)系是一對多的之間的聯(lián)系是一對多的2022-4-563兩個以上實體型
28、之間的聯(lián)系(續(xù))o實例 課程、教師與參考書三個實體型課程、教師與參考書三個實體型一門課程可以有若干個教師講授,一門課程可以有若干個教師講授,使用若干本參考書,使用若干本參考書,每一個教師只講授一門課程,每一個教師只講授一門課程,每一本參考書只供一門課程使用每一本參考書只供一門課程使用課程課程講授講授教師教師1m兩個以上實體型間兩個以上實體型間1:n聯(lián)系聯(lián)系參考書參考書n2022-4-564兩個以上實體型之間的聯(lián)系(續(xù))兩個以上實體型間的多對多聯(lián)系實例 供應(yīng)商、項目、零件三個實體型供應(yīng)商、項目、零件三個實體型一個供應(yīng)商可以供給多個項目多種零件一個供應(yīng)商可以供給多個項目多種零件每個項目可以使用多個
29、供應(yīng)商供應(yīng)的零件每個項目可以使用多個供應(yīng)商供應(yīng)的零件每種零件可由不同供應(yīng)商供給每種零件可由不同供應(yīng)商供給供應(yīng)商供應(yīng)商供應(yīng)供應(yīng)項目項目mp兩個以上實體型間兩個以上實體型間m:n聯(lián)系聯(lián)系零件零件n2022-4-565四、單個實體型內(nèi)的聯(lián)系o一對多聯(lián)系實例 職工實體型內(nèi)部具有領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)的聯(lián)職工實體型內(nèi)部具有領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)的聯(lián)系系某一職工(干部)某一職工(干部)“領(lǐng)導(dǎo)領(lǐng)導(dǎo)”若干名職工若干名職工一個職工僅被另外一個職工直接領(lǐng)導(dǎo)一個職工僅被另外一個職工直接領(lǐng)導(dǎo)這是一對多的聯(lián)系這是一對多的聯(lián)系職工職工領(lǐng)導(dǎo)領(lǐng)導(dǎo)1n單個實體型內(nèi)部單個實體型內(nèi)部1:n聯(lián)系聯(lián)系2022-4-566五、 概念模型的一種表示方法o實體
30、聯(lián)系方法(E-R方法)用E-R圖來描述現(xiàn)實世界的概念模型E-R方法也稱為E-R模型2022-4-567E-R圖o實體型用矩形表示,矩形框內(nèi)寫明實體名。o屬性用橢圓形表示,并用無向邊將其與相應(yīng)的實體連接起來學(xué)生學(xué)生教師教師學(xué)生學(xué)生學(xué)號學(xué)號年齡年齡性別性別姓名姓名2022-4-568E-R圖(續(xù))o聯(lián)系聯(lián)系本身: 用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實體連接起來,同時在無無向邊分別與有關(guān)實體連接起來,同時在無向邊旁標(biāo)上聯(lián)系的類型(向邊旁標(biāo)上聯(lián)系的類型(1:11:1、1:n1:n或或m:nm:n) 2022-4-569聯(lián)系的表示方法實體型實體型A聯(lián)
31、系名聯(lián)系名實體型實體型B111:1聯(lián)系聯(lián)系實體型實體型A聯(lián)系名聯(lián)系名1n1:n聯(lián)系聯(lián)系實體型實體型A實體型實體型B聯(lián)系名聯(lián)系名mnm:n聯(lián)系聯(lián)系實體型實體型B2022-4-570聯(lián)系的表示方法示例班級班級班級班級-班長班長班長班長111:1聯(lián)系聯(lián)系課程課程選修選修學(xué)生學(xué)生mnm:n聯(lián)系聯(lián)系班級班級組成組成學(xué)生學(xué)生1n1:n聯(lián)系聯(lián)系2022-4-571聯(lián)系的屬性課程課程選修選修學(xué)生學(xué)生mn成績成績v聯(lián)系的屬性:聯(lián)系本身也是一種實體型,也聯(lián)系本身也是一種實體型,也 可以有屬性。如果一個聯(lián)系具可以有屬性。如果一個聯(lián)系具有屬性,則這些屬性也要用無有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來向邊與該聯(lián)
32、系連接起來 2022-4-572六、一個實例用E-R圖表示某個工廠物資管理的概念模型o實體倉庫: 倉庫號、面積、電話號碼零件 :零件號、名稱、規(guī)格、單價、描述供應(yīng)商:供應(yīng)商號、姓名、地址、電話號碼、帳號項目:項目號、預(yù)算、開工日期職工:職工號、姓名、年齡、職稱 2022-4-573一個實例o實體之間的聯(lián)系如下:實體之間的聯(lián)系如下: (1)(1)一個倉庫可以存放多種零件,一種零件可以存放在多個倉庫中。倉庫一個倉庫可以存放多種零件,一種零件可以存放在多個倉庫中。倉庫和零件具有多對多的聯(lián)系。用庫存量來表示某種零件在某個倉庫中的和零件具有多對多的聯(lián)系。用庫存量來表示某種零件在某個倉庫中的數(shù)量。數(shù)量。(
33、2)(2)一個倉庫有多個職工當(dāng)倉庫保管員,一個職工只能在一個倉庫工作,一個倉庫有多個職工當(dāng)倉庫保管員,一個職工只能在一個倉庫工作,倉庫和職工之間是一對多的聯(lián)系。職工實體型中具有一對多的聯(lián)系倉庫和職工之間是一對多的聯(lián)系。職工實體型中具有一對多的聯(lián)系 (3)(3)職工之間具有領(lǐng)導(dǎo)職工之間具有領(lǐng)導(dǎo)- -被領(lǐng)導(dǎo)關(guān)系。即倉庫主任領(lǐng)導(dǎo)若干保管員。被領(lǐng)導(dǎo)關(guān)系。即倉庫主任領(lǐng)導(dǎo)若干保管員。(4)(4)供應(yīng)商、項目和零件三者之間具有多對多的聯(lián)系供應(yīng)商、項目和零件三者之間具有多對多的聯(lián)系2022-4-574一個實例2022-4-575 1.2.4 最常用的數(shù)據(jù)模型o非關(guān)系模型層次模型層次模型(Hierarchica
34、l Model)(Hierarchical Model)網(wǎng)狀模型網(wǎng)狀模型(Network Model)(Network Model)o關(guān)系模型(Relational Model) o面向?qū)ο竽P?Object Oriented Model)o對象關(guān)系模型(Object Relational Model)2022-4-5761.2.5 層次模型o層次模型是數(shù)據(jù)庫系統(tǒng)中最早出現(xiàn)的數(shù)據(jù)模型 o層次數(shù)據(jù)庫系統(tǒng)的典型代表是IBM公司的IMS(Information Management System)數(shù)據(jù)庫管理系統(tǒng)o層次模型用樹形結(jié)構(gòu)來表示各類實體以及實體間的聯(lián)系 2022-4-577一、 層次數(shù)據(jù)模型
35、的數(shù)據(jù)結(jié)構(gòu)o層次模型 滿足下面兩個條件的基本層次聯(lián)系的集合為層次模型滿足下面兩個條件的基本層次聯(lián)系的集合為層次模型1. 1. 有且只有一個結(jié)點(diǎn)沒有雙親結(jié)點(diǎn),這個結(jié)點(diǎn)稱為根結(jié)有且只有一個結(jié)點(diǎn)沒有雙親結(jié)點(diǎn),這個結(jié)點(diǎn)稱為根結(jié)點(diǎn)點(diǎn)2. 2. 根以外的其它結(jié)點(diǎn)有且只有一個雙親結(jié)點(diǎn)根以外的其它結(jié)點(diǎn)有且只有一個雙親結(jié)點(diǎn)o層次模型中的幾個術(shù)語根結(jié)點(diǎn),雙親結(jié)點(diǎn),兄弟結(jié)點(diǎn),葉結(jié)點(diǎn)根結(jié)點(diǎn),雙親結(jié)點(diǎn),兄弟結(jié)點(diǎn),葉結(jié)點(diǎn)2022-4-578層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)) 1 根結(jié)點(diǎn)根結(jié)點(diǎn) 2 兄弟結(jié)點(diǎn)兄弟結(jié)點(diǎn) 3 葉結(jié)點(diǎn)葉結(jié)點(diǎn) 4 兄弟結(jié)點(diǎn)兄弟結(jié)點(diǎn) 5 葉結(jié)點(diǎn)葉結(jié)點(diǎn) 葉結(jié)點(diǎn)葉結(jié)點(diǎn)圖圖1.16 一個層次模型的示例一個層次模型
36、的示例2022-4-579層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))o層次模型的特點(diǎn):結(jié)點(diǎn)的雙親是唯一的結(jié)點(diǎn)的雙親是唯一的只能直接處理一對多的實體聯(lián)系只能直接處理一對多的實體聯(lián)系每個記錄類型可以定義一個排序字段,也稱為碼字段每個記錄類型可以定義一個排序字段,也稱為碼字段任何記錄值只有按其路徑查看時,才能顯出它的全部意任何記錄值只有按其路徑查看時,才能顯出它的全部意義義沒有一個子女記錄值能夠脫離雙親記錄值而獨(dú)立存在沒有一個子女記錄值能夠脫離雙親記錄值而獨(dú)立存在2022-4-580層次數(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)
37、記錄型教員的雙親結(jié)點(diǎn)葉結(jié)點(diǎn)葉結(jié)點(diǎn)葉結(jié)點(diǎn)葉結(jié)點(diǎn)字段字段2022-4-581層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))圖1.18 教員學(xué)生層次數(shù)據(jù)庫的一個值 2022-4-582四、層次數(shù)據(jù)模型的存儲結(jié)構(gòu)o鄰接法按照層次樹前序遍歷的順序把所有記錄值依次按照層次樹前序遍歷的順序把所有記錄值依次鄰接存放,即通過物理空間的位置相鄰來實鄰接存放,即通過物理空間的位置相鄰來實現(xiàn)層次順序現(xiàn)層次順序2022-4-583層次數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))圖圖1.20 層次數(shù)據(jù)庫及其實例層次數(shù)據(jù)庫及其實例 A1A2C8C6C4B6C9C2B4C14C7C5C3B1A1圖圖1.21 鄰接法鄰接法 按鄰接法存放圖按鄰接法存放圖1.20(b
38、)中以根記錄中以根記錄A1為首的層次為首的層次記錄實例集記錄實例集按鄰接法存放圖1.20(b)中以根記錄A1為首的層次記錄實例集 2022-4-584層次數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))o鏈接法用指引來反映數(shù)據(jù)之間的層次聯(lián)系用指引來反映數(shù)據(jù)之間的層次聯(lián)系子女兄弟鏈接法子女兄弟鏈接法層次序列鏈接法層次序列鏈接法2022-4-585層次數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))n 子女子女-兄弟鏈接法兄弟鏈接法每個記錄設(shè)兩類指針,分別指向最左邊的子女(每個記錄型對應(yīng)一個)和最近的兄弟2022-4-586層次數(shù)據(jù)模型的存儲結(jié)構(gòu)(續(xù))o層次序列鏈接法層次序列鏈接法按樹的前序穿越順序鏈接各記錄值2022-4-587五、層次模型的
39、優(yōu)缺點(diǎn)o優(yōu)點(diǎn)層次模型的數(shù)據(jù)結(jié)構(gòu)比較簡單清晰層次模型的數(shù)據(jù)結(jié)構(gòu)比較簡單清晰 查詢效率高,性能優(yōu)于關(guān)系模型,不低于網(wǎng)狀模查詢效率高,性能優(yōu)于關(guān)系模型,不低于網(wǎng)狀模型型層次數(shù)據(jù)模型提供了良好的完整性支持層次數(shù)據(jù)模型提供了良好的完整性支持o缺點(diǎn)多對多聯(lián)系表示不自然多對多聯(lián)系表示不自然對插入和刪除操作的限制多,應(yīng)用程序的編寫比對插入和刪除操作的限制多,應(yīng)用程序的編寫比較復(fù)雜較復(fù)雜 查詢子女結(jié)點(diǎn)必須通過雙親結(jié)點(diǎn)查詢子女結(jié)點(diǎn)必須通過雙親結(jié)點(diǎn)由于結(jié)構(gòu)嚴(yán)密,層次命令趨于程序化由于結(jié)構(gòu)嚴(yán)密,層次命令趨于程序化 2022-4-5881.2.6 網(wǎng)狀模型o網(wǎng)狀數(shù)據(jù)庫系統(tǒng)采用網(wǎng)狀數(shù)據(jù)庫系統(tǒng)采用網(wǎng)狀模型網(wǎng)狀模型作為數(shù)據(jù)的組織方作為數(shù)據(jù)的組織方式式 o典型代表是典型代表是DBTGDBTG系統(tǒng):系統(tǒng):亦稱CODASYL系統(tǒng)70年代由DBTG提出的一個系統(tǒng)方案奠定了數(shù)據(jù)庫系統(tǒng)的基本概念、方法和技術(shù)o實際系統(tǒng)實際系統(tǒng)Cul
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 父子之間不動產(chǎn)房產(chǎn)贈與合同書
- 公司辦公室裝飾裝修施工合同
- 團(tuán)體購房合同范文
- 商品混凝土供貨合同協(xié)議
- 民間親人之間住宅贈與合同
- 企業(yè)汽車租賃合同范本(2024版)
- 羽毛球館全包裝修合同樣本
- 跨國食品加工居間合同
- 環(huán)保建材生產(chǎn)與銷售合同
- 飲水機(jī)租賃合同
- IT系統(tǒng)災(zāi)備和容災(zāi)解決方案項目設(shè)計方案
- 青島版二年級數(shù)學(xué)下冊(六三制)全冊課件【完整版】
- 主要負(fù)責(zé)人重大隱患帶隊檢查表
- 魯濱遜漂流記人物形象分析
- 危險廢物貯存?zhèn)}庫建設(shè)標(biāo)準(zhǔn)
- 新加坡小學(xué)二年級英語試卷practice 2
- 多層工業(yè)廠房主體結(jié)構(gòu)施工方案鋼筋混凝土結(jié)構(gòu)
- 救生艇筏、救助艇基本知識課件
- 阻燃壁紙匯報
- 梁若瑜著-十二宮六七二象書增注版
- 企業(yè)年會盛典元旦頒獎晚會通用PPT模板
評論
0/150
提交評論