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

下載本文檔

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

文檔簡介

1、An Introduction to Database Systems數(shù)據(jù)庫系統(tǒng)概論數(shù)據(jù)庫系統(tǒng)概論 An Introduction to Database SystemsAn Introduction to Database Systems教材教材 教材教材 王珊,薩師煊:數(shù)據(jù)庫系統(tǒng)概論王珊,薩師煊:數(shù)據(jù)庫系統(tǒng)概論(第四第四版版) 高等教育出版社,高等教育出版社,2006.5 An Introduction to Database Systems內(nèi)容安排內(nèi)容安排 基礎篇 第一章 緒論(4學時) 第二章 關系數(shù)據(jù)庫(8學時) 第三章 關系數(shù)據(jù)庫標準語言SQL(10+6學時) 第四章 數(shù)據(jù)庫安全性

2、(4學時) 第五章 數(shù)據(jù)庫完整性(2+2學時) 設計與應用開發(fā)篇 第六章 關系數(shù)據(jù)理論數(shù)據(jù)庫設計(10學時) 第七章 數(shù)據(jù)庫設計(8學時) 系統(tǒng)篇 第九章 關系查詢處理和查詢優(yōu)化(2學時) 第十章 數(shù)據(jù)庫恢復技術(4學時) 第十一章 并發(fā)控制(4學時)An Introduction to Database Systems第一章第一章 緒論緒論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é)An Introduction to Database Systems數(shù)據(jù)庫的地位數(shù)據(jù)庫的地位v數(shù)據(jù)庫技

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

4、1 四個基本概念四個基本概念v數(shù)據(jù)(Data)v數(shù)據(jù)庫(Database)v數(shù)據(jù)庫管理系統(tǒng)(DBMS)v數(shù)據(jù)庫系統(tǒng)(DBS)An Introduction to Database Systems一、數(shù)據(jù)一、數(shù)據(jù)v 數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲的基本對象v 數(shù)據(jù)的定義 描述事物的符號記錄v 數(shù)據(jù)的種類 文本、圖形、圖像、音頻、視頻、學生的檔案記錄、貨物的運輸情況等v 數(shù)據(jù)的特點 數(shù)據(jù)與其語義是不可分的An Introduction to Database Systems數(shù)據(jù)舉例數(shù)據(jù)舉例v 數(shù)據(jù)的含義稱為數(shù)據(jù)的語義,數(shù)據(jù)與其語義是不可分的。 例如 93是一個數(shù)據(jù)語義1:學生某門課的成績語義2:某

5、人的體重語義3:計算機系2003級學生人數(shù)語義4:請同學給出。An Introduction to Database Systems數(shù)據(jù)舉例數(shù)據(jù)舉例v學生檔案中的學生記錄(李明,男,197205,江蘇南京市,計算機系,1990) 語義:學生姓名、性別、出生年月、籍貫、所在院系、 入學時間 解釋:李明是個大學生,1972年5月出生,江蘇南京市人,1990年考入計算機系請給出另一個解釋和語義An Introduction to Database Systems二、數(shù)據(jù)庫二、數(shù)據(jù)庫v數(shù)據(jù)庫的定義 數(shù)據(jù)庫數(shù)據(jù)庫(Database,簡稱簡稱DB)是是長期儲存長期儲存在計算機內(nèi)、在計算機內(nèi)、有有組織組織的

6、、的、可共享可共享的的大量大量數(shù)據(jù)的集合。數(shù)據(jù)的集合。 數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存,可為各種用可為各種用戶共享戶共享,冗余度較小冗余度較小,數(shù)據(jù)獨立性較高數(shù)據(jù)獨立性較高,易擴展。易擴展。v數(shù)據(jù)庫的基本特點 永久存儲永久存儲 有組織有組織 可共享可共享An Introduction to Database Systems三、數(shù)據(jù)庫管理系統(tǒng)三、數(shù)據(jù)庫管理系統(tǒng)v什么是DBMS 位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。 是基礎軟件,是一個大型復雜的軟件系統(tǒng) vDBMS的用途 科學地組織和存儲數(shù)據(jù)、高效地獲取和維護數(shù)據(jù)An Introduction to

7、Database Systems硬件平臺硬件平臺基礎軟件平臺基礎軟件平臺軟件基礎構(gòu)架平臺軟件基礎構(gòu)架平臺應用軟件平臺應用軟件平臺軟件產(chǎn)品軟件產(chǎn)品協(xié)同軟件協(xié)同軟件辦公軟件辦公軟件 中間件中間件 應用服務器應用服務器數(shù)據(jù)庫在計算機系統(tǒng)中的位置數(shù)據(jù)庫在計算機系統(tǒng)中的位置An Introduction to Database SystemsDBMS的主要功能的主要功能 數(shù)據(jù)定義功能數(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)系 提供多種存取方法提高存取效率An

8、 Introduction to Database SystemsDBMS的主要功能的主要功能 數(shù)據(jù)操縱功能數(shù)據(jù)操縱功能 提供數(shù)據(jù)操縱語言(DML) 實現(xiàn)對數(shù)據(jù)庫的基本操作 (查詢、插入、刪除和修改) 數(shù)據(jù)庫的事務管理和運行管理數(shù)據(jù)庫的事務管理和運行管理 數(shù)據(jù)庫在建立、運行和維護時由DBMS統(tǒng)一管理和控制保證數(shù)據(jù)的安全性、完整性、多用戶對數(shù)據(jù)的并發(fā)使用發(fā)生故障后的系統(tǒng)恢復An Introduction to Database SystemsDBMS的主要功能的主要功能 數(shù)據(jù)庫的建立和維護功能數(shù)據(jù)庫的建立和維護功能(實用程序?qū)嵱贸绦? 數(shù)據(jù)庫初始數(shù)據(jù)裝載轉(zhuǎn)換 數(shù)據(jù)庫轉(zhuǎn)儲 介質(zhì)故障恢復 數(shù)據(jù)庫的重

9、組織 性能監(jiān)視分析等 其它功能其它功能 DBMS與網(wǎng)絡中其它軟件系統(tǒng)的通信 兩個DBMS系統(tǒng)的數(shù)據(jù)轉(zhuǎn)換 異構(gòu)數(shù)據(jù)庫之間的互訪和互操作An Introduction to Database Systems四、數(shù)據(jù)庫系統(tǒng)四、數(shù)據(jù)庫系統(tǒng)v什么是數(shù)據(jù)庫系統(tǒng)(Database 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ā)工具) 應用系統(tǒng)應用系統(tǒng) 數(shù)據(jù)庫管理員數(shù)據(jù)庫管理員 An Introduction to Database Systems 數(shù)據(jù)庫數(shù)據(jù)庫

10、應用系統(tǒng)應用系統(tǒng)應用開發(fā)工具 操作系統(tǒng) 數(shù)據(jù)庫管理系數(shù)據(jù)庫管理系統(tǒng)統(tǒng) 數(shù)據(jù)庫管理員數(shù)據(jù)庫管理員用戶用戶用戶 數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)An Introduction to Database Systems1.1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述 1.1.1 四個基本概念四個基本概念 1.1.2 數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展 1.1.3 數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)庫系統(tǒng)的特點 An Introduction to Database Systems數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展v什么是數(shù)據(jù)管理 對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索和維護對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索

11、和維護 數(shù)據(jù)處理的中心問題數(shù)據(jù)處理的中心問題v數(shù)據(jù)管理技術的發(fā)展過程 人工管理階段人工管理階段(20世紀世紀40年代中年代中-50年代中年代中) 文件系統(tǒng)階段文件系統(tǒng)階段(20世紀世紀50年代末年代末-60年代中年代中) 數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)階段(20世紀世紀60年代末年代末-現(xiàn)在現(xiàn)在)An Introduction to Database Systems數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展(續(xù)續(xù))v數(shù)據(jù)管理技術的發(fā)展動力 應用需求的推動應用需求的推動 計算機硬件的發(fā)展計算機硬件的發(fā)展 計算機軟件的發(fā)展計算機軟件的發(fā)展An Introduction to Database Sy

12、stems一、人工管理階段一、人工管理階段v時期 20世紀40年代中-50年代中v產(chǎn)生的背景 應用需求科學計算 硬件水平無直接存取存儲設備 軟件水平?jīng)]有操作系統(tǒng) 處理方式批處理An Introduction to Database Systems人工管理階段人工管理階段(續(xù)續(xù))v特點 數(shù)據(jù)的管理者:用戶(程序員),數(shù)據(jù)不保存 數(shù)據(jù)面向的對象:某一應用程序 數(shù)據(jù)的共享程度:無共享、冗余度極大 數(shù)據(jù)的獨立性:不獨立,完全依賴于程序 數(shù)據(jù)的結(jié)構(gòu)化:無結(jié)構(gòu) 數(shù)據(jù)控制能力:應用程序自己控制An Introduction to Database Systems應用程序與數(shù)據(jù)的對應關系應用程序與數(shù)據(jù)的對應關

13、系(人工管理階段人工管理階段) 應用程序應用程序1數(shù)據(jù)集數(shù)據(jù)集1應用程序應用程序2數(shù)據(jù)集數(shù)據(jù)集2應用程序應用程序數(shù)據(jù)集數(shù)據(jù)集n.人工管理階段應用程序與數(shù)據(jù)之間的對應關系 An Introduction to Database Systems二、文件系統(tǒng)階段二、文件系統(tǒng)階段v時期 20世紀50年代末-60年代中v產(chǎn)生的背景 應用需求科學計算、管理 硬件水平磁盤、磁鼓 軟件水平有文件系統(tǒng) 處理方式聯(lián)機實時處理、批處理An Introduction to Database Systems文件系統(tǒng)階段文件系統(tǒng)階段(續(xù)續(xù))v特點數(shù)據(jù)的管理者:文件系統(tǒng),數(shù)據(jù)可長期保存數(shù)據(jù)面向的對象:某一應用程序 數(shù)據(jù)的共

14、享程度:共享性差、冗余度大數(shù)據(jù)的結(jié)構(gòu)化:記錄內(nèi)有結(jié)構(gòu),整體無結(jié)構(gòu)數(shù)據(jù)的獨立性:獨立性差,數(shù)據(jù)的邏輯結(jié)構(gòu)改變必須 修改應用程序數(shù)據(jù)控制能力:應用程序自己控制An Introduction to Database Systems應用程序與數(shù)據(jù)的對應關系應用程序與數(shù)據(jù)的對應關系(文件系統(tǒng)階段文件系統(tǒng)階段)應用程序應用程序文件文件應用程序應用程序文件文件2應用程序應用程序文件文件n存取存取方法方法.文件系統(tǒng)階段應用程序與數(shù)據(jù)之間的對應關系 An Introduction to Database Systems文件系統(tǒng)中數(shù)據(jù)的結(jié)構(gòu)文件系統(tǒng)中數(shù)據(jù)的結(jié)構(gòu)v 記錄內(nèi)有結(jié)構(gòu)。v 數(shù)據(jù)的結(jié)構(gòu)是靠程序定義和解釋的。

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

16、理,批處理An Introduction to Database Systems1.1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述 1.1.1 四個基本概念四個基本概念 1.1.2 數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展 1.1.3 數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)庫系統(tǒng)的特點 An Introduction to Database Systems1.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)一管理和控制An Introduction to Database Systems數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)結(jié)構(gòu)化v整體數(shù)據(jù)的結(jié)構(gòu)化整體數(shù)據(jù)的結(jié)構(gòu)化是數(shù)據(jù)庫

17、的主要特征之一 v整體結(jié)構(gòu)化 不再僅僅針對某一個應用,而是面向全組織不再僅僅針對某一個應用,而是面向全組織 不僅數(shù)據(jù)內(nèi)部結(jié)構(gòu)化,整體是結(jié)構(gòu)化的,數(shù)據(jù)之間具有聯(lián)系不僅數(shù)據(jù)內(nèi)部結(jié)構(gòu)化,整體是結(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ù)項An Introduction to Database Systems數(shù)據(jù)的共享性高,冗余度低,易擴充數(shù)據(jù)的共享性高,冗余度低,易擴充v數(shù)據(jù)庫系統(tǒng)從整體角度看待和描述數(shù)據(jù),數(shù)據(jù)面向整個

18、系統(tǒng),可以被多個用戶、多個應用共享使用。v數(shù)據(jù)共享的好處 減少數(shù)據(jù)冗余,節(jié)約存儲空間 避免數(shù)據(jù)之間的不相容性與不一致性 使系統(tǒng)易于擴充An Introduction to Database Systems數(shù)據(jù)獨立性高數(shù)據(jù)獨立性高v 物理獨立性 指用戶的應用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。指用戶的應用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。當數(shù)據(jù)的物理存儲改變了,應用程序不用改變當數(shù)據(jù)的物理存儲改變了,應用程序不用改變。v 邏輯獨立性 指用戶的應用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨立的。數(shù)據(jù)的邏指用戶的應用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨立的。數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不

19、變輯結(jié)構(gòu)改變了,用戶程序也可以不變。v 數(shù)據(jù)獨立性是由DBMS的二級映像功能來保證的An Introduction to Database Systems數(shù)據(jù)由數(shù)據(jù)由DBMS統(tǒng)一管理和控制統(tǒng)一管理和控制v DBMS提供的數(shù)據(jù)控制功能 (1)數(shù)據(jù)的安全性(Security)保護保護數(shù)據(jù),以防止不合法的使用造成的數(shù)據(jù)的泄密和破壞。 (2)數(shù)據(jù)的完整性(Integrity)檢查將數(shù)據(jù)控制在有效的范圍內(nèi),或保證數(shù)據(jù)之間滿足一定的關系。 (3)并發(fā)(Concurrency)控制對多用戶的并發(fā)操作加以控制和協(xié)調(diào),防止相互干擾而得到錯誤的結(jié)果。 (4)數(shù)據(jù)庫恢復(Recovery)將數(shù)據(jù)庫從錯誤狀態(tài)恢復到某

20、一已知的正確狀態(tài)。An Introduction to Database Systems應用程序與數(shù)據(jù)的對應關系應用程序與數(shù)據(jù)的對應關系(數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng))DBMS應用程序應用程序1應用程序應用程序2數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫系統(tǒng)階段應用程序與數(shù)據(jù)之間的對應關系 An Introduction to Database Systems第一章第一章 緒論緒論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é)An Introduction to Database Systems 1.2 數(shù)據(jù)模型數(shù)據(jù)模型

21、 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 關系模型關系模型An Introduction to Database Systems數(shù)據(jù)模型數(shù)據(jù)模型v 在數(shù)據(jù)庫中用數(shù)據(jù)模型這個工具來抽象、表示和處理抽象、表示和處理現(xiàn)實世界中的數(shù)據(jù)和信息。v 通俗地講數(shù)據(jù)模型就是現(xiàn)實世界的模擬。v 數(shù)據(jù)模型應滿足三方面要求 能比較能比較真實真實地模擬現(xiàn)實世界地模擬現(xiàn)實世界 容易容易為人所為人所理解理解 便于在計算機上便

22、于在計算機上實現(xiàn)實現(xiàn)An Introduction to Database Systems 1.2.1 兩大類數(shù)據(jù)模型兩大類數(shù)據(jù)模型v 數(shù)據(jù)模型分為兩類(分屬兩個不同的層次)(1) 概念模型概念模型 也稱信息模型,它是按用戶的觀點來對數(shù)據(jù)和信息建也稱信息模型,它是按用戶的觀點來對數(shù)據(jù)和信息建模,用于數(shù)據(jù)庫設計。模,用于數(shù)據(jù)庫設計。 (2) 邏輯模型和物理模型邏輯模型和物理模型 邏輯模型主要包括網(wǎng)狀模型、層次模型、關系模型、面向?qū)ο筮壿嬆P椭饕ňW(wǎng)狀模型、層次模型、關系模型、面向?qū)ο竽P偷龋从嬎銠C系統(tǒng)的觀點對數(shù)據(jù)建模,用于模型等,按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,用于DBMS實現(xiàn)實現(xiàn)。 物理模型

23、是對數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示物理模型是對數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示方式和存取方法,在磁盤或磁帶上的存儲方式和存取方法。方式和存取方法,在磁盤或磁帶上的存儲方式和存取方法。An Introduction to Database Systems兩大類數(shù)據(jù)模型兩大類數(shù)據(jù)模型 (續(xù)續(xù))v客觀對象的抽象過程-兩步抽象 現(xiàn)實世界中的客觀對象抽象為概念模型;現(xiàn)實世界中的客觀對象抽象為概念模型; 把概念模型轉(zhuǎn)換為某一把概念模型轉(zhuǎn)換為某一DBMS支持的數(shù)據(jù)模型。支持的數(shù)據(jù)模型。An Introduction to Database Systems兩大類數(shù)據(jù)模型兩大類數(shù)據(jù)模型 (

24、續(xù)續(xù))DBMS支持的數(shù)據(jù)模型支持的數(shù)據(jù)模型概念模型概念模型認識認識抽象抽象信息世界信息世界機器世界機器世界現(xiàn)實世界中客觀對象的抽象過程現(xiàn)實世界中客觀對象的抽象過程現(xiàn)實世現(xiàn)實世界界現(xiàn)實世界現(xiàn)實世界 概念模型概念模型數(shù)據(jù)庫設計人員完成數(shù)據(jù)庫設計人員完成邏輯模型邏輯模型 物理模型物理模型由由DBMS完成完成概念模型概念模型 邏輯模型邏輯模型數(shù)據(jù)庫設計人員完成數(shù)據(jù)庫設計人員完成An Introduction to Database Systems 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.

25、4 最常用的數(shù)據(jù)模型最常用的數(shù)據(jù)模型 1.2.5 層次模型層次模型 1.2.6 網(wǎng)狀模型網(wǎng)狀模型 1.2.7 關系模型關系模型An Introduction to Database Systems 1.2.2 數(shù)據(jù)模型的組成要素數(shù)據(jù)模型的組成要素v數(shù)據(jù)結(jié)構(gòu) v數(shù)據(jù)操作 v完整性約束條件An Introduction to Database Systems 一、一、 數(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ì)有關的對象 與數(shù)據(jù)之間聯(lián)系有關的對象v數(shù)據(jù)結(jié)構(gòu)是對系統(tǒng)靜態(tài)特性的描述An Introduction to Database

26、 Systems 二、數(shù)據(jù)操作二、數(shù)據(jù)操作 v數(shù)據(jù)操作 對數(shù)據(jù)庫中各種對象(型)的實例(值)允許執(zhí)行的 操作操作及有關的操作規(guī)則操作規(guī)則v數(shù)據(jù)操作的類型 查詢 更新(包括插入、刪除、修改)An Introduction to Database Systems 數(shù)據(jù)操作數(shù)據(jù)操作(續(xù)續(xù)) v數(shù)據(jù)模型對操作的定義 操作的確切含義 操作符號 操作規(guī)則(如優(yōu)先級) 實現(xiàn)操作的語言v數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述An Introduction to Database Systems三、數(shù)據(jù)的完整性約束條件三、數(shù)據(jù)的完整性約束條件 v數(shù)據(jù)的完整性約束條件 一組完整性規(guī)則的集合。 完整性規(guī)則:給定的數(shù)據(jù)模型中

27、數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則 用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。An Introduction to Database Systems 數(shù)據(jù)的完整性約束條件數(shù)據(jù)的完整性約束條件(續(xù)續(xù))v數(shù)據(jù)模型對完整性約束條件的定義 反映和規(guī)定本反映和規(guī)定本數(shù)據(jù)模型數(shù)據(jù)模型必須遵守的必須遵守的基本的通用的基本的通用的完整完整性約束條件。例如在關系模型中,任何關系必須滿足性約束條件。例如在關系模型中,任何關系必須滿足實體完整性和參照完整性兩個條件。實體完整性和參照完整性兩個條件。 提供定義完整性約束條件的機制,以反映提供定義完整性約束條件的機制,以反映具體應用具

28、體應用所所涉及的數(shù)據(jù)必須遵守的特定的語義約束條件涉及的數(shù)據(jù)必須遵守的特定的語義約束條件。An Introduction to Database Systems 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 關系模型關系模型An Introduction to Database Systems 1.2.3 概念模型概念模型v信息世界中的基本概念v兩個實體型之間的聯(lián)系v兩個以上實體

29、型之間的聯(lián)系v單個實體型內(nèi)的聯(lián)系v概念模型的一種表示方法v一個實例An Introduction to Database Systems概念模型概念模型v概念模型的用途 概念模型用于信息世界的建模概念模型用于信息世界的建模 是現(xiàn)實世界到機器世界的一個中間層次是現(xiàn)實世界到機器世界的一個中間層次 是數(shù)據(jù)庫設計的有力工具是數(shù)據(jù)庫設計的有力工具 數(shù)據(jù)庫設計人員和用戶之間進行交流的語言數(shù)據(jù)庫設計人員和用戶之間進行交流的語言v對概念模型的基本要求 較強的語義表達能力較強的語義表達能力 能夠方便、直接地表達應用中的各種語義知識能夠方便、直接地表達應用中的各種語義知識 簡單、清晰、易于用戶理解簡單、清晰、易于

30、用戶理解An Introduction to Database Systems一、信息世界中的基本概念一、信息世界中的基本概念(1) 實體(Entity) 客觀存在并可相互區(qū)別的事物稱為實體。客觀存在并可相互區(qū)別的事物稱為實體。可以是具體的人、事、物或抽象的概念可以是具體的人、事、物或抽象的概念。(2) 屬性(Attribute) 實體所具有的某一特性稱為屬性。實體所具有的某一特性稱為屬性。一個實體可以由若干個屬性來刻畫。一個實體可以由若干個屬性來刻畫。 (3) 碼(Key) 唯一標識實體的屬性集稱為碼。唯一標識實體的屬性集稱為碼。An Introduction to Database Sys

31、tems信息世界中的基本概念信息世界中的基本概念(續(xù)續(xù))(4) 域(Domain) 屬性的取值范圍稱為該屬性的域?qū)傩缘娜≈捣秶Q為該屬性的域。 (5) 實體型(Entity Type) 用實體名及其屬性名集合來抽象和刻畫同類實體稱為實用實體名及其屬性名集合來抽象和刻畫同類實體稱為實體型體型(6) 實體集(Entity Set) 同一類型實體的集合稱為實體集同一類型實體的集合稱為實體集An Introduction to Database Systems信息世界中的基本概念信息世界中的基本概念(續(xù)續(xù))(7) 聯(lián)系(Relationship) 現(xiàn)實世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世界現(xiàn)實世界

32、中事物內(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)系An Introduction to Database Systems二、兩個實體型之間的聯(lián)系二、兩個實體型之間的聯(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用圖

33、形來表示兩個實體型之間的這三類聯(lián)系用圖形來表示兩個實體型之間的這三類聯(lián)系 An Introduction to Database Systems二、兩個實體型之間的聯(lián)系(續(xù))二、兩個實體型之間的聯(lián)系(續(xù)) v一對一聯(lián)系(1:1) 實例一個班級只有一個正班長一個班級只有一個正班長一個班長只在一個班中任職一個班長只在一個班中任職 定義:定義: 如果對于實體集如果對于實體集A中的每一個實體,實中的每一個實體,實體集體集B中至多有一個(也可以沒有)實體中至多有一個(也可以沒有)實體與之聯(lián)系,反之亦然,與之聯(lián)系,反之亦然,則稱實體集則稱實體集A與實與實體集體集B具有一對一聯(lián)系,具有一對一聯(lián)系,記為記為1

34、:1 班級班級班級班級-班長班長班長班長111:1聯(lián)系聯(lián)系An Introduction to Database Systems兩個實體型之間的聯(lián)系兩個實體型之間的聯(lián)系 (續(xù)續(xù))v一對多聯(lián)系(1:n) 實例一個班級中有若干名學生,一個班級中有若干名學生,每個學生只在一個班級中學習每個學生只在一個班級中學習 定義:如果對于實體集如果對于實體集A中的每一個實體,實體集中的每一個實體,實體集B中中有有n個實體(個實體(n0)與之聯(lián)系,反之,對于實體)與之聯(lián)系,反之,對于實體集集B中的每一個實體,實體集中的每一個實體,實體集A中至多只有一個中至多只有一個實體與之聯(lián)系,則稱實體與之聯(lián)系,則稱實體集實體集

35、A與實體集與實體集B有一對有一對多聯(lián)系,記為多聯(lián)系,記為1:n班級班級組成組成學生學生1n1:n聯(lián)系聯(lián)系An Introduction to Database Systems兩個實體型之間的聯(lián)系兩個實體型之間的聯(lián)系 (續(xù)續(xù))v多對多聯(lián)系(m:n) 實例課程與學生之間的聯(lián)系:課程與學生之間的聯(lián)系:一門課程同時有若干個學生選修一門課程同時有若干個學生選修一個學生可以同時選修多門課程一個學生可以同時選修多門課程 定義:如果對于實體集如果對于實體集A中的每一個實體,實體集中的每一個實體,實體集B中中有有n個實體(個實體(n0)與之聯(lián)系,反之,對于實)與之聯(lián)系,反之,對于實體集體集B中的每一個實體,實體

36、集中的每一個實體,實體集A中也有中也有m個實個實體(體(m0)與之聯(lián)系,則稱實體集)與之聯(lián)系,則稱實體集A與實體與實體B具有多對多聯(lián)系,記為具有多對多聯(lián)系,記為m:n課程課程選修選修學生學生mnm:n聯(lián)系聯(lián)系An Introduction to Database Systems三、兩個以上實體型之間的聯(lián)系三、兩個以上實體型之間的聯(lián)系v兩個以上實體型之間一對多聯(lián)系 若實體集若實體集E1,E2,.,En存在聯(lián)系,對于實體集存在聯(lián)系,對于實體集Ej(j=1,2,.,i-1,i+1,.,n)中的給定實體,)中的給定實體,最多只和最多只和Ei中的一個實體相聯(lián)系,則我們說中的一個實體相聯(lián)系,則我們說Ei與

37、與E1,E2,.,Ei-1,Ei+1,.,En之間的聯(lián)系是一對多的之間的聯(lián)系是一對多的An Introduction to Database Systems兩個以上實體型之間的聯(lián)系兩個以上實體型之間的聯(lián)系(續(xù)續(xù))v實例 課程、教師與參考書三個實體型課程、教師與參考書三個實體型一門課程可以有若干個教師講授,一門課程可以有若干個教師講授,使用若干本參考書,使用若干本參考書,每一個教師只講授一門課程,每一個教師只講授一門課程,每一本參考書只供一門課程使用每一本參考書只供一門課程使用課程課程講授講授教師教師1m兩個以上實體型間兩個以上實體型間1:n聯(lián)系聯(lián)系參考書參考書nAn Introduction

38、to Database Systems兩個以上實體型之間的聯(lián)系兩個以上實體型之間的聯(lián)系(續(xù)續(xù))v 多個實體型間的一對一聯(lián)系v 兩個以上實體型間的多對多聯(lián)系 實例 供應商、項目、零件三個實體型供應商、項目、零件三個實體型一個供應商可以供給多個項目多種零件一個供應商可以供給多個項目多種零件每個項目可以使用多個供應商供應的零件每個項目可以使用多個供應商供應的零件每種零件可由不同供應商供給每種零件可由不同供應商供給供應商供應商供應供應項目項目mp兩個以上實體型間兩個以上實體型間m:n聯(lián)系聯(lián)系零件零件nAn Introduction to Database Systems四、單個實體型內(nèi)的聯(lián)系四、單個實

39、體型內(nèi)的聯(lián)系v 一對多聯(lián)系 實例 職工實體型內(nèi)部具有領導與被領導的聯(lián)系職工實體型內(nèi)部具有領導與被領導的聯(lián)系某一職工(干部)某一職工(干部)“領導領導”若干名職工若干名職工一個職工僅被另外一個職工直接領導一個職工僅被另外一個職工直接領導這是一對多的聯(lián)系這是一對多的聯(lián)系v一對一聯(lián)系 請舉例職工職工領導領導1n單個實體型內(nèi)部單個實體型內(nèi)部1:n聯(lián)系聯(lián)系An Introduction to Database Systems單個實體型內(nèi)的聯(lián)系單個實體型內(nèi)的聯(lián)系實體型實體型1聯(lián)系名聯(lián)系名mn單個實體型內(nèi)的單個實體型內(nèi)的m:n聯(lián)系聯(lián)系v多對多聯(lián)系請舉例An Introduction to Database

40、Systems五、五、 概念模型的一種表示方法概念模型的一種表示方法v實體聯(lián)系方法(E-R方法) 用E-R圖來描述現(xiàn)實世界的概念模型 E-R方法也稱為E-R模型An Introduction to Database SystemsE-R圖圖v實體型用矩形表示,矩形框內(nèi)寫明實體名。v屬性用橢圓形表示,并用無向邊將其與相應的實體連接起來學生學生教師教師學生學生學號學號年齡年齡性別性別姓名姓名An Introduction to Database SystemsE-R圖圖(續(xù)續(xù))v聯(lián)系 聯(lián)系本身: 用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關實體連

41、接起來,同時在無向邊旁標上聯(lián)系別與有關實體連接起來,同時在無向邊旁標上聯(lián)系的類型(的類型(1:1、1:n或或m:n) An Introduction to Database Systems聯(lián)系的表示方法聯(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)系實體型實體型BAn Introduction to Database Systems聯(lián)系的表示方法示例聯(lián)系的表示方法示例班級班級班級班級-班長班長班長班長111:1聯(lián)系聯(lián)系課程課程選修選修學生學生mnm:n聯(lián)系聯(lián)系班級班級組

42、成組成學生學生1n1:n聯(lián)系聯(lián)系An Introduction to Database Systems聯(lián)系的屬性聯(lián)系的屬性課程課程選修選修學生學生mn成績成績v聯(lián)系的屬性:聯(lián)系本身也是一種實體型,也聯(lián)系本身也是一種實體型,也 可以有屬性。如果一個聯(lián)系具可以有屬性。如果一個聯(lián)系具有屬性,則這些屬性也要用無有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來向邊與該聯(lián)系連接起來 An Introduction to Database Systems六、一個實例六、一個實例用E-R圖表示某個工廠物資管理的概念模型v 實體 倉庫: 倉庫號、面積、電話號碼 零件 :零件號、名稱、規(guī)格、單價、描述 供應商:供應

43、商號、姓名、地址、電話號碼、帳號 項目:項目號、預算、開工日期 職工:職工號、姓名、年齡、職稱 An Introduction to Database Systems一個實例一個實例v實體之間的聯(lián)系如下: (1)一個倉庫可以存放多種零件,一種零件可以存放在多個倉庫中。倉庫和零件具有多對多的聯(lián)系。用庫存量來表示某種零件在某個倉庫中的數(shù)量。(2)一個倉庫有多個職工當倉庫保管員,一個職工只能在一個倉庫工作,倉庫和職工之間是一對多的聯(lián)系。職工實體型中具有一對多的聯(lián)系 (3)職工之間具有領導-被領導關系。即倉庫主任領導若干保管員。(4)供應商、項目和零件三者之間具有多對多的聯(lián)系An Introducti

44、on to Database Systems一個實例一個實例An Introduction to Database Systems 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 關系模型關系模型An Introduction to Database Systems 1.2.4 最常用的數(shù)據(jù)模型最常用的數(shù)據(jù)模型v非關系模型 層次模型層次模型(Hierarchical Model)

45、 網(wǎng)狀模型網(wǎng)狀模型(Network Model)v關系模型(Relational Model) v面向?qū)ο竽P?Object Oriented Model)v對象關系模型(Object Relational Model)An Introduction to Database Systems 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 關系模型關系模型An Introducti

46、on to Database Systems1.2.7 關系模型關系模型v 關系數(shù)據(jù)庫系統(tǒng)采用關系模型作為數(shù)據(jù)的組織方式 v 1970年美國IBM公司San Jose研究室的研究員E.F.Codd首次提出了數(shù)據(jù)庫系統(tǒng)的關系模型 v 計算機廠商新推出的數(shù)據(jù)庫管理系統(tǒng)幾乎都支持關系模型 An Introduction to Database Systems一、關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)一、關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu) v 在在用戶觀點用戶觀點下,關系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表,它由行和下,關系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表,它由行和列組成。列組成。學 號姓 名年 齡性 別系 名年 級2005004王

47、小明19女社會學20052005006黃大鵬20男商品學20052005008張文斌18女法律2005學生登記表學生登記表屬性屬性元組元組An Introduction to Database Systems關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)) 關系(關系(Relation)一個關系對應通常說的一張表 元組(元組(Tuple)表中的一行即為一個元組 屬性(屬性(Attribute) 表中的一列即為一個屬性,給每一個屬性起一個名稱即屬性名An Introduction to Database Systems關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)) 主碼(主碼(

48、Key)表中的某個屬性組,它可以唯一確定一個元組。 域(域(Domain)屬性的取值范圍。 分量分量元組中的一個屬性值。 關系模式關系模式對關系的描述關系名(屬性1,屬性2,屬性n)學生(學號,姓名,年齡,性別,系,年級)An Introduction to Database Systems關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例1學生、系、系與學生之間的一對多聯(lián)系:學生(學號,姓名,年齡,性別,系號,年級)學生(學號,姓名,年齡,性別,系號,年級)系系 (系號,系名,辦公地點系號,系名,辦公地點)例2系、系主任、系與系主任間的一對一聯(lián)系An Introduction to

49、Database Systems關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例3學生、課程、學生與課程之間的多對多聯(lián)系: 學生(學號,姓名,年齡,性別,系號,年級)學生(學號,姓名,年齡,性別,系號,年級)課程(課程號,課程名,學分)課程(課程號,課程名,學分)選修(學號,課程號,成績)選修(學號,課程號,成績)An Introduction to Database Systems關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))v 關系必須是規(guī)范化的,滿足一定的規(guī)范條件關系必須是規(guī)范化的,滿足一定的規(guī)范條件最基本的規(guī)范條件:關系的每一個分量必須是一個不可分的數(shù)據(jù)項, 不允許

50、表中還有表 圖圖1.27中工資和扣除是可分的數(shù)據(jù)項中工資和扣除是可分的數(shù)據(jù)項 ,不符合關系模型要求不符合關系模型要求 職工號姓名職 稱工 資扣 除實 發(fā)基 本津 貼職務房 租水 電86051陳 平講 師13051200501601122283圖圖1.27 一個工資表一個工資表(表中有表表中有表)實例實例 An Introduction to Database Systems關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關系術語一般表格的術語關系名表名關系模式表頭(表格的描述)關系(一張)二維表元組記錄或行屬性列屬性名列名屬性值列值分量一條記錄中的一個列值非規(guī)范關系表中有表(大表中嵌有

51、小表)表表1.2 術語對比術語對比 An Introduction to Database Systems二、關系數(shù)據(jù)模型的操縱與完整性約束二、關系數(shù)據(jù)模型的操縱與完整性約束v 數(shù)據(jù)操作是集合操作,數(shù)據(jù)操作是集合操作,操作對象和操作結(jié)果都是關系操作對象和操作結(jié)果都是關系 查詢 插入 刪除 更新v 數(shù)據(jù)操作是集合操作,數(shù)據(jù)操作是集合操作,操作對象和操作結(jié)果都是關系,即操作對象和操作結(jié)果都是關系,即若干元組的若干元組的集合集合v 存取路徑對用戶隱蔽,用戶只要指出存取路徑對用戶隱蔽,用戶只要指出“干什么干什么”,不必詳細說明不必詳細說明“怎怎么干么干”An Introduction to Datab

52、ase Systems關系數(shù)據(jù)模型的操縱與完整性約束(續(xù))關系數(shù)據(jù)模型的操縱與完整性約束(續(xù))v關系的完整性約束條件 實體完整性 參照完整性 用戶定義的完整性An Introduction to Database Systems三、關系數(shù)據(jù)模型的存儲結(jié)構(gòu)三、關系數(shù)據(jù)模型的存儲結(jié)構(gòu)v實體及實體間的聯(lián)系都用表來表示v表以文件形式存儲 有的DBMS一個表對應一個操作系統(tǒng)文件 有的DBMS自己設計文件結(jié)構(gòu)An Introduction to Database Systems四、關系數(shù)據(jù)模型的優(yōu)缺點四、關系數(shù)據(jù)模型的優(yōu)缺點v優(yōu)點優(yōu)點 建立在嚴格的數(shù)學概念的基礎上建立在嚴格的數(shù)學概念的基礎上 概念單一概念

53、單一實體和各類聯(lián)系都用關系來表示對數(shù)據(jù)的檢索結(jié)果也是關系 關系模型的存取路徑對用戶透明關系模型的存取路徑對用戶透明具有更高的數(shù)據(jù)獨立性,更好的安全保密性簡化了程序員的工作和數(shù)據(jù)庫開發(fā)建立的工作An Introduction to Database Systems關系數(shù)據(jù)模型的優(yōu)缺點(續(xù))關系數(shù)據(jù)模型的優(yōu)缺點(續(xù))v缺點缺點 存取路徑對用戶透明導致查詢效率往往不如非 關系數(shù)據(jù)模型 為提高性能,必須對用戶的查詢請求進行優(yōu)化 增加了開發(fā)DBMS的難度An Introduction to Database Systems第一章第一章 緒論緒論1.1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述1.2 數(shù)據(jù)模型數(shù)據(jù)模型

54、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é)An Introduction to Database Systems1.3 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)v從數(shù)據(jù)庫管理系統(tǒng)角度看,數(shù)據(jù)庫系統(tǒng)通常采用三級模式結(jié)構(gòu),是數(shù)據(jù)庫系統(tǒng)內(nèi)部的系統(tǒng)結(jié)構(gòu) v從數(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) 客戶服務器 瀏覽器應用服務器數(shù)據(jù)庫服務器多層結(jié)構(gòu)等An Introduction to Database Systems數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)(續(xù))數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)(續(xù))1.3.1 數(shù)據(jù)庫系統(tǒng)模式的概念數(shù)據(jù)庫系

55、統(tǒng)模式的概念 1.3.2 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu) 1.3.3 數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性 An Introduction to Database Systems1.3.1 數(shù)據(jù)庫系統(tǒng)模式的概念數(shù)據(jù)庫系統(tǒng)模式的概念v“型” 和“值” 的概念 型(Type)對某一類數(shù)據(jù)的結(jié)構(gòu)和屬性的說明 值(Value)是型的一個具體賦值例如學生記錄型: (學號,姓名,性別,系別,年齡,籍貫)一個記錄值: (900201,李明,男,計算機,22,江蘇)An Introduction to Database Systems數(shù)據(jù)庫系統(tǒng)模式的概念(續(xù))數(shù)據(jù)

56、庫系統(tǒng)模式的概念(續(xù))v模式(模式(Schema) 數(shù)據(jù)庫邏輯結(jié)構(gòu)和特征的描述數(shù)據(jù)庫邏輯結(jié)構(gòu)和特征的描述 是型的描述是型的描述 反映的是數(shù)據(jù)的結(jié)構(gòu)及其聯(lián)系反映的是數(shù)據(jù)的結(jié)構(gòu)及其聯(lián)系 模式是相對穩(wěn)定的模式是相對穩(wěn)定的v實例(實例(Instance) 模式的一個具體值模式的一個具體值 反映數(shù)據(jù)庫某一時刻的狀態(tài)反映數(shù)據(jù)庫某一時刻的狀態(tài) 同一個模式可以有很多實例同一個模式可以有很多實例 實例隨數(shù)據(jù)庫中的數(shù)據(jù)的更新而變動實例隨數(shù)據(jù)庫中的數(shù)據(jù)的更新而變動An Introduction to Database Systems數(shù)據(jù)庫系統(tǒng)模式的概念數(shù)據(jù)庫系統(tǒng)模式的概念 (續(xù))(續(xù))例如:在學生選課數(shù)據(jù)庫模式中,

57、包含學生記錄、課程記錄和學生選課記錄 2003年的一個學生數(shù)據(jù)庫實例,包含:2003年學校中所有學生的記錄學校開設的所有課程的記錄所有學生選課的記錄 2002年度學生數(shù)據(jù)庫模式對應的實例與 2003年度學生數(shù)據(jù)庫模式對應的實例是不同的 An Introduction to Database Systems數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)(續(xù))數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)(續(xù))1.3.1 數(shù)據(jù)庫系統(tǒng)模式的概念數(shù)據(jù)庫系統(tǒng)模式的概念 1.3.2 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu) 1.3.3 數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性 An Introduction to Database Sy

58、stems1.3.2 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)v模式(Schema) v外模式(External Schema)v內(nèi)模式(Internal Schema) An Introduction to Database Systems數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)(續(xù))數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)(續(xù))圖1.28 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu) An Introduction to Database Systems一、模式(一、模式(Schema)v模式(也稱邏輯模式) 數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述 所有用戶的公共數(shù)據(jù)視圖,綜合了所有用戶的需求所

59、有用戶的公共數(shù)據(jù)視圖,綜合了所有用戶的需求v一個數(shù)據(jù)庫只有一個模式v模式的地位:是數(shù)據(jù)庫系統(tǒng)模式結(jié)構(gòu)的中間層 與數(shù)據(jù)的物理存儲細節(jié)和硬件環(huán)境無關與數(shù)據(jù)的物理存儲細節(jié)和硬件環(huán)境無關 與具體的應用程序、開發(fā)工具及高級程序設計語言無關與具體的應用程序、開發(fā)工具及高級程序設計語言無關An Introduction to Database Systems模式(續(xù))模式(續(xù))v模式的定義 數(shù)據(jù)的邏輯結(jié)構(gòu)(數(shù)據(jù)項的名字、類型、取值范圍等)數(shù)據(jù)的邏輯結(jié)構(gòu)(數(shù)據(jù)項的名字、類型、取值范圍等) 數(shù)據(jù)之間的聯(lián)系數(shù)據(jù)之間的聯(lián)系 數(shù)據(jù)有關的安全性、完整性要求數(shù)據(jù)有關的安全性、完整性要求An Introduction to

60、 Database Systems二、外模式(二、外模式(External Schema)v 外模式(也稱子模式或用戶模式) 數(shù)據(jù)庫用戶(包括應用程序員和最終用戶)使用的數(shù)據(jù)庫用戶(包括應用程序員和最終用戶)使用的局部局部數(shù)據(jù)數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述的邏輯結(jié)構(gòu)和特征的描述 數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應用有關的數(shù)據(jù)的邏輯表數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應用有關的數(shù)據(jù)的邏輯表示示An Introduction to Database Systems外模式(續(xù))外模式(續(xù))v 外模式的地位:介于模式與應用之間 模式與外模式的關系:一對多 外模式通常是模式的子集外模式通常是模式的子集 一個數(shù)據(jù)庫

溫馨提示

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

評論

0/150

提交評論