數(shù)據(jù)庫 第一章緒論_第1頁
數(shù)據(jù)庫 第一章緒論_第2頁
數(shù)據(jù)庫 第一章緒論_第3頁
數(shù)據(jù)庫 第一章緒論_第4頁
數(shù)據(jù)庫 第一章緒論_第5頁
已閱讀5頁,還剩106頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

數(shù)據(jù)庫系統(tǒng)概論AnIntroductiontoDatabaseSystems第一章緒論AnIntroductiontoDatabaseSystems第一章緒論1.1數(shù)據(jù)庫系統(tǒng)概述1.2

數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.3

數(shù)據(jù)庫系統(tǒng)的組成1.4數(shù)據(jù)模型1.5小結(jié)AnIntroductiontoDatabaseSystems數(shù)據(jù)庫的地位數(shù)據(jù)庫技術(shù)產(chǎn)生于六十年代末,是數(shù)據(jù)管理的最新技術(shù),是計算機科學的重要分支。數(shù)據(jù)庫技術(shù)是信息系統(tǒng)的核心和基礎(chǔ),它的出現(xiàn)極大地促進了計算機應(yīng)用向各行各業(yè)的滲透。數(shù)據(jù)庫的建設(shè)規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成為衡量一個國家信息化程度的重要標志。AnIntroductiontoDatabaseSystems第一章緒論1.1數(shù)據(jù)庫系統(tǒng)概述

1.1.1四個基本概念

1.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展

1.1.3數(shù)據(jù)庫系統(tǒng)的特點

AnIntroductiontoDatabaseSystems1.1.1四個基本概念數(shù)據(jù)(Data)數(shù)據(jù)庫(Database)數(shù)據(jù)庫管理系統(tǒng)(DBMS)數(shù)據(jù)庫系統(tǒng)(DBS)AnIntroductiontoDatabaseSystems1、數(shù)據(jù)數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲的基本對象數(shù)據(jù)的定義描述事物的符號記錄數(shù)據(jù)的種類文本、圖形、圖像、音頻、視頻、學生的檔案記錄、貨物的運輸情況等數(shù)據(jù)的特點數(shù)據(jù)與其語義是不可分的AnIntroductiontoDatabaseSystems數(shù)據(jù)舉例數(shù)據(jù)的含義稱為數(shù)據(jù)的語義,數(shù)據(jù)與其語義是不可分的。例如93是一個數(shù)據(jù)語義1:學生某門課的成績語義2:某人的體重語義3:計算機系2003級學生人數(shù)語義4:請同學給出。。。AnIntroductiontoDatabaseSystems數(shù)據(jù)舉例學生檔案中的學生記錄(李明,男,197205,江蘇南京市,計算機系,1990)語義:學生姓名、性別、出生年月、籍貫、所在院系、入學時間解釋:李明是個大學生,1972年5月出生,江蘇南京市人,1990年考入計算機系請給出另一個解釋和語義AnIntroductiontoDatabaseSystems2、數(shù)據(jù)庫數(shù)據(jù)庫的定義數(shù)據(jù)庫(Database,簡稱DB)是長期儲存在計算機內(nèi)、有組織的、可共享的大量數(shù)據(jù)的集合。數(shù)據(jù)庫的基本特征數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存可為各種用戶共享冗余度較小數(shù)據(jù)獨立性較高易擴展AnIntroductiontoDatabaseSystems3、數(shù)據(jù)庫管理系統(tǒng)DBMS的形式化定義科學地組織和存儲、高效地獲取和維護數(shù)據(jù)的一個系統(tǒng)軟件。位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。是基礎(chǔ)軟件,是一個大型復(fù)雜的軟件系統(tǒng),如:AnIntroductiontoDatabaseSystems硬件平臺基礎(chǔ)軟件平臺軟件基礎(chǔ)構(gòu)架平臺應(yīng)用軟件平臺軟件產(chǎn)品協(xié)同軟件辦公軟件數(shù)據(jù)庫系統(tǒng)操作系統(tǒng)中間件應(yīng)用服務(wù)器數(shù)據(jù)庫在計算機系統(tǒng)中的位置AnIntroductiontoDatabaseSystemsDBMS的主要功能數(shù)據(jù)定義功能提供數(shù)據(jù)定義語言(DDL)

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

分類組織、存儲和管理各種數(shù)據(jù)

確定組織數(shù)據(jù)的文件結(jié)構(gòu)和存取方式實現(xiàn)數(shù)據(jù)之間的聯(lián)系

提供多種存取方法提高存取效率AnIntroductiontoDatabaseSystemsDBMS的主要功能數(shù)據(jù)操縱功能

提供數(shù)據(jù)操縱語言(DML)

實現(xiàn)對數(shù)據(jù)庫的基本操作(查詢、插入、刪除和修改)數(shù)據(jù)庫的事務(wù)管理和運行管理數(shù)據(jù)庫在建立、運行和維護時由DBMS統(tǒng)一管理和控制保證數(shù)據(jù)的安全性、完整性、多用戶對數(shù)據(jù)的并發(fā)使用發(fā)生故障后的系統(tǒng)恢復(fù)AnIntroductiontoDatabaseSystemsDBMS的主要功能數(shù)據(jù)庫的建立和維護功能(實用程序)

數(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ù)庫之間的互訪和互操作AnIntroductiontoDatabaseSystems四、數(shù)據(jù)庫系統(tǒng)什么是數(shù)據(jù)庫系統(tǒng)(DatabaseSystem,簡稱DBS)

在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成數(shù)據(jù)庫系統(tǒng)的構(gòu)成數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)應(yīng)用系統(tǒng)數(shù)據(jù)庫管理員

AnIntroductiontoDatabaseSystems

數(shù)據(jù)庫應(yīng)用系統(tǒng)應(yīng)用開發(fā)工具

操作系統(tǒng)

數(shù)據(jù)庫管理系統(tǒng)

數(shù)據(jù)庫管理員用戶用戶用戶

數(shù)據(jù)庫系統(tǒng)AnIntroductiontoDatabaseSystems1.1數(shù)據(jù)庫系統(tǒng)概述

1.1.1四個基本概念

1.1.2數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展

1.1.3數(shù)據(jù)庫系統(tǒng)的特點

AnIntroductiontoDatabaseSystems數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展什么是數(shù)據(jù)管理對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索和維護數(shù)據(jù)處理的中心問題數(shù)據(jù)管理技術(shù)的發(fā)展過程人工管理階段(20世紀40年代中--50年代中)文件系統(tǒng)階段(20世紀50年代末--60年代中)數(shù)據(jù)庫系統(tǒng)階段(20世紀60年代末--現(xiàn)在)AnIntroductiontoDatabaseSystems數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展(續(xù))數(shù)據(jù)管理技術(shù)的發(fā)展動力應(yīng)用需求的推動計算機硬件的發(fā)展計算機軟件的發(fā)展AnIntroductiontoDatabaseSystems一、人工管理階段時期20世紀40年代中--50年代中產(chǎn)生的背景應(yīng)用需求 科學計算 硬件水平 無直接存取存儲設(shè)備軟件水平 沒有操作系統(tǒng) 處理方式 批處理 AnIntroductiontoDatabaseSystems人工管理階段(續(xù))特點數(shù)據(jù)的管理者:用戶(程序員),數(shù)據(jù)不保存數(shù)據(jù)面向的對象:某一應(yīng)用程序數(shù)據(jù)的共享程度:無共享、冗余度極大數(shù)據(jù)的獨立性:不獨立,完全依賴于程序數(shù)據(jù)的結(jié)構(gòu)化:無結(jié)構(gòu)數(shù)據(jù)控制能力:應(yīng)用程序自己控制AnIntroductiontoDatabaseSystems應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系(人工管理階段)

應(yīng)用程序1數(shù)據(jù)集1應(yīng)用程序2數(shù)據(jù)集2應(yīng)用程序n數(shù)據(jù)集n...…...…人工管理階段應(yīng)用程序與數(shù)據(jù)之間的對應(yīng)關(guān)系

AnIntroductiontoDatabaseSystems二、文件系統(tǒng)階段時期20世紀50年代末--60年代中產(chǎn)生的背景應(yīng)用需求 科學計算、管理 硬件水平 磁盤、磁鼓 軟件水平 有文件系統(tǒng) 處理方式 聯(lián)機實時處理、批處理

AnIntroductiontoDatabaseSystems數(shù)據(jù)管理技術(shù)的發(fā)展(4)文件系統(tǒng)階段(20世紀50s后-60s中)時期50年代末--60年代中產(chǎn)生的背景應(yīng)用需求 科學計算、管理 硬件水平 磁盤、磁鼓 軟件水平 有文件系統(tǒng) 處理方式 聯(lián)機實時處理、批處理程序1程序2數(shù)據(jù)集1數(shù)據(jù)集nFS程序2數(shù)據(jù)集2AnIntroductiontoDatabaseSystems文件系統(tǒng)階段(續(xù))特點數(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ù)的獨立性:獨立性差,數(shù)據(jù)的邏輯結(jié)構(gòu)改變必須修改應(yīng)用程序數(shù)據(jù)控制能力:應(yīng)用程序自己控制AnIntroductiontoDatabaseSystems文件系統(tǒng)中數(shù)據(jù)的結(jié)構(gòu)記錄內(nèi)有結(jié)構(gòu)。數(shù)據(jù)的結(jié)構(gòu)是靠程序定義和解釋的。數(shù)據(jù)只能是定長的??梢蚤g接實現(xiàn)數(shù)據(jù)變長要求,但訪問相應(yīng)數(shù)據(jù)的應(yīng)用程序復(fù)雜了。文件間是獨立的,因此數(shù)據(jù)整體無結(jié)構(gòu)??梢蚤g接實現(xiàn)數(shù)據(jù)整體的有結(jié)構(gòu),但必須在應(yīng)用程序中對描述數(shù)據(jù)間的聯(lián)系。數(shù)據(jù)的最小存取單位是記錄。AnIntroductiontoDatabaseSystems三、數(shù)據(jù)庫系統(tǒng)階段時期20世紀60年代末以來產(chǎn)生的背景應(yīng)用背景 大規(guī)模管理 硬件背景 大容量磁盤、磁盤陣列

軟件背景 有數(shù)據(jù)庫管理系統(tǒng) 處理方式 聯(lián)機實時處理,分布處理,批處理 AnIntroductiontoDatabaseSystems應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系(數(shù)據(jù)庫系統(tǒng))DBMS應(yīng)用程序1應(yīng)用程序2數(shù)據(jù)庫…數(shù)據(jù)庫系統(tǒng)階段應(yīng)用程序與數(shù)據(jù)之間的對應(yīng)關(guān)系

AnIntroductiontoDatabaseSystems1.1.3數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)的共享性高,冗余度低,易擴充數(shù)據(jù)獨立性高數(shù)據(jù)由DBMS統(tǒng)一管理和控制AnIntroductiontoDatabaseSystems數(shù)據(jù)結(jié)構(gòu)化整體數(shù)據(jù)的結(jié)構(gòu)化是數(shù)據(jù)庫的主要特征之一整體結(jié)構(gòu)化不再僅僅針對某一個應(yīng)用,而是面向全組織不僅數(shù)據(jù)內(nèi)部結(jié)構(gòu)化,整體是結(jié)構(gòu)化的,數(shù)據(jù)之間具有聯(lián)系數(shù)據(jù)庫中實現(xiàn)的是數(shù)據(jù)的真正結(jié)構(gòu)化數(shù)據(jù)的結(jié)構(gòu)用數(shù)據(jù)模型描述,無需程序定義和解釋數(shù)據(jù)可以變長數(shù)據(jù)的最小存取單位是數(shù)據(jù)項()noname性別年齡系住址telAnIntroductiontoDatabaseSystems數(shù)據(jù)的共享性高,冗余度低,易擴充數(shù)據(jù)庫系統(tǒng)從整體角度看待和描述數(shù)據(jù),數(shù)據(jù)面向整個系統(tǒng),可以被多個用戶、多個應(yīng)用共享使用。數(shù)據(jù)共享的好處減少數(shù)據(jù)冗余,節(jié)約存儲空間避免數(shù)據(jù)之間的不相容性與不一致性使系統(tǒng)易于擴充AnIntroductiontoDatabaseSystems數(shù)據(jù)獨立性高物理獨立性指用戶的應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。當數(shù)據(jù)的物理存儲改變了,應(yīng)用程序不用改變。邏輯獨立性指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨立的。數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不變。數(shù)據(jù)獨立性是由DBMS的二級映像功能來保證的AnIntroductiontoDatabaseSystems數(shù)據(jù)由DBMS統(tǒng)一管理和控制DBMS提供的數(shù)據(jù)控制功能(1)數(shù)據(jù)的安全性(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)。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é)AnIntroductiontoDatabaseSystems

1.2數(shù)據(jù)模型

1.2.1兩大類數(shù)據(jù)模型

1.2.2數(shù)據(jù)模型的組成要素

1.2.3概念模型

1.2.4最常用的數(shù)據(jù)模型

1.2.5關(guān)系模型AnIntroductiontoDatabaseSystems什么是模型?車模航模等AnIntroductiontoDatabaseSystemsAnIntroductiontoDatabaseSystemsAnIntroductiontoDatabaseSystems數(shù)據(jù)模型在數(shù)據(jù)庫中用數(shù)據(jù)模型這個工具來抽象、表示和處理現(xiàn)實世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實世界的模擬。數(shù)據(jù)模型應(yīng)滿足三方面要求能比較真實地模擬現(xiàn)實世界容易為人所理解便于在計算機上實現(xiàn)AnIntroductiontoDatabaseSystems

1.2.1兩大類數(shù)據(jù)模型數(shù)據(jù)模型分為兩類(分屬兩個不同的層次)(1)概念模型也稱信息模型,它是按用戶的觀點來對數(shù)據(jù)和信息建模,用于數(shù)據(jù)庫設(shè)計。(2)邏輯模型和物理模型

邏輯模型主要包括網(wǎng)狀模型、層次模型、關(guān)系模型、面向?qū)ο竽P偷?,按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,用于DBMS實現(xiàn)。物理模型是對數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示方式和存取方法,在磁盤或磁帶上的存儲方式和存取方法。AnIntroductiontoDatabaseSystems兩大類數(shù)據(jù)模型(續(xù))客觀對象的抽象過程---兩步抽象現(xiàn)實世界中的客觀對象抽象為概念模型;把概念模型轉(zhuǎn)換為某一DBMS支持的數(shù)據(jù)模型。AnIntroductiontoDatabaseSystems兩大類數(shù)據(jù)模型(續(xù))DBMS支持的數(shù)據(jù)模型概念模型認識抽象信息世界機器世界現(xiàn)實世界中客觀對象的抽象過程現(xiàn)實世界現(xiàn)實世界概念模型數(shù)據(jù)庫設(shè)計人員完成邏輯模型物理模型由DBMS完成概念模型邏輯模型數(shù)據(jù)庫設(shè)計人員完成AnIntroductiontoDatabaseSystems

1.2數(shù)據(jù)模型

1.2.1兩大類數(shù)據(jù)模型

1.2.2數(shù)據(jù)模型的組成要素

1.2.3概念模型

1.2.4最常用的數(shù)據(jù)模型

1.2.5關(guān)系模型AnIntroductiontoDatabaseSystems

1.2.2數(shù)據(jù)模型的組成要素數(shù)據(jù)結(jié)構(gòu)----------靜態(tài)特性數(shù)據(jù)操作----------動態(tài)特性完整性約束條件數(shù)據(jù)模型是嚴格定義的一組概念的集合。這些概念精確的描述了系統(tǒng)的靜態(tài)特性、動態(tài)特性和完整性約束條件AnIntroductiontoDatabaseSystems

一、

數(shù)據(jù)結(jié)構(gòu)什么是數(shù)據(jù)結(jié)構(gòu)描述數(shù)據(jù)庫的組成對象,以及對象之間的聯(lián)系描述的內(nèi)容與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對象。與數(shù)據(jù)之間聯(lián)系有關(guān)的對象。關(guān)系模型中的字符型關(guān)系數(shù)據(jù)庫中的域、關(guān)系A(chǔ)nIntroductiontoDatabaseSystems

二、數(shù)據(jù)操作數(shù)據(jù)操作對數(shù)據(jù)庫中各種對象(型)的實例(值)允許執(zhí)行的操作及有關(guān)的操作規(guī)則數(shù)據(jù)操作的類型查詢更新(包括插入、刪除、修改)AnIntroductiontoDatabaseSystems數(shù)據(jù)操作(續(xù))數(shù)據(jù)模型對操作的定義操作的確切含義操作符號操作規(guī)則(如優(yōu)先級)實現(xiàn)操作的語言數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述請舉例說明AnIntroductiontoDatabaseSystems三、數(shù)據(jù)的完整性約束條件數(shù)據(jù)的完整性約束條件一組完整性規(guī)則的集合。完整性規(guī)則:給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和儲存規(guī)則用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。AnIntroductiontoDatabaseSystems數(shù)據(jù)的完整性約束條件(續(xù))數(shù)據(jù)模型對完整性約束條件的定義反映和規(guī)定本數(shù)據(jù)模型必須遵守的基本的通用的完整性約束條件。例如在關(guān)系模型中,任何關(guān)系必須滿足實體完整性和參照完整性兩個條件。提供定義完整性約束條件的機制,以反映具體應(yīng)用所涉及的數(shù)據(jù)必須遵守的特定的語義約束條件。AnIntroductiontoDatabaseSystems

1.2數(shù)據(jù)模型

1.2.1兩大類數(shù)據(jù)模型

1.2.2數(shù)據(jù)模型的組成要素

1.2.3概念模型

1.2.4最常用的數(shù)據(jù)模型

1.2.5關(guān)系模型AnIntroductiontoDatabaseSystems

1.2.3概念模型信息世界中的基本概念兩個實體型之間的聯(lián)系兩個以上實體型之間的聯(lián)系單個實體型內(nèi)的聯(lián)系概念模型的一種表示方法一個實例AnIntroductiontoDatabaseSystems一、信息世界中的基本概念(1)實體(Entity)

客觀存在并可相互區(qū)別的事物稱為實體。可以是具體的人、事、物或抽象的概念。(2)屬性(Attribute)實體所具有的某一特性稱為屬性。一個實體可以由若干個屬性來刻畫。

(3)碼(Key)唯一標識實體的屬性集稱為碼。AnIntroductiontoDatabaseSystems信息世界中的基本概念(續(xù))(4)域(Domain)屬性的取值范圍稱為該屬性的域。(5)實體型(EntityType)用實體名及其屬性名集合來抽象和刻畫同類實體稱為實體型(6)實體集(EntitySet)同一類型實體的集合稱為實體集AnIntroductiontoDatabaseSystems信息世界中的基本概念(續(xù))(7)聯(lián)系(Relationship)

現(xiàn)實世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世界中反映為實體內(nèi)部的聯(lián)系和實體之間的聯(lián)系。實體內(nèi)部的聯(lián)系通常是指組成實體的各屬性之間的聯(lián)系實體之間的聯(lián)系通常是指不同實體集之間的聯(lián)系A(chǔ)nIntroductiontoDatabaseSystems二、兩個實體型之間的聯(lián)系實體型A聯(lián)系名實體型B111:1聯(lián)系實體型A聯(lián)系名1n1:n(n:1)聯(lián)系實體型A實體型B聯(lián)系名mnm:n聯(lián)系實體型B用圖形來表示兩個實體型之間的這三類聯(lián)系

AnIntroductiontoDatabaseSystems二、兩個實體型之間的聯(lián)系(續(xù))一對一聯(lián)系(1:1)實例一個班級只有一個正班長一個班長只在一個班中任職定義:如果對于實體集A中的每一個實體,實體集B中至多有一個(也可以沒有)實體與之聯(lián)系,反之亦然,則稱實體集A與實體集B具有一對一聯(lián)系,記為1:1

班級班級-班長班長111:1聯(lián)系A(chǔ)nIntroductiontoDatabaseSystems兩個實體型之間的聯(lián)系(續(xù))一對多聯(lián)系(1:n)實例一個班級中有若干名學生,每個學生只在一個班級中學習定義:如果對于實體集A中的每一個實體,實體集B中有n個實體(n≥0)與之聯(lián)系,反之,對于實體集B中的每一個實體,實體集A中至多只有一個實體與之聯(lián)系,則稱實體集A與實體集B有一對多聯(lián)系,記為1:n班級組成學生1n1:n聯(lián)系A(chǔ)nIntroductiontoDatabaseSystems兩個實體型之間的聯(lián)系(續(xù))多對多聯(lián)系(m:n)實例課程與學生之間的聯(lián)系:一門課程同時有若干個學生選修一個學生可以同時選修多門課程定義:如果對于實體集A中的每一個實體,實體集B中有n個實體(n≥0)與之聯(lián)系,反之,對于實體集B中的每一個實體,實體集A中也有m個實體(m≥0)與之聯(lián)系,則稱實體集A與實體B具有多對多聯(lián)系,記為m:n課程選修學生mnm:n聯(lián)系A(chǔ)nIntroductiontoDatabaseSystems三、多個實體型間的聯(lián)系多個實體型間的一對多聯(lián)系若實體集E1,E2,...,En存在聯(lián)系,對于實體集Ej(j=1,2,...,i-1,i+1,...,n)中的給定實體,最多只和Ei中的一個實體相聯(lián)系,則我們說Ei與E1,E2,...,Ei-1,Ei+1,...,En之間的聯(lián)系是一對多的。AnIntroductiontoDatabaseSystems多個實體型間的聯(lián)系(續(xù))實例

課程、教師與參考書三個實體型如果一門課程可以有若干個教師講授,使用若干本參考書,每一個教師只講授一門課程,每一本參考書只供一門課程使用課程與教師、參考書之間的聯(lián)系是一對多的多個實體型間的一對一聯(lián)系多個實體型間的多對多聯(lián)系A(chǔ)nIntroductiontoDatabaseSystems同一實體集內(nèi)各實體間的聯(lián)系一對多聯(lián)系實例

職工實體集內(nèi)部具有領(lǐng)導與被領(lǐng)導的聯(lián)系某一職工(干部)“領(lǐng)導”若干名職工一個職工僅被另外一個職工直接領(lǐng)導這是一對多的聯(lián)系一對一聯(lián)系多對多聯(lián)系A(chǔ)nIntroductiontoDatabaseSystems五、概念模型的一種表示方法實體-聯(lián)系方法(E-R方法)用E-R圖來描述現(xiàn)實世界的概念模型E-R方法也稱為E-R模型AnIntroductiontoDatabaseSystemsE-R圖實體型用矩形表示,矩形框內(nèi)寫明實體名。屬性用橢圓形表示,并用無向邊將其與相應(yīng)的實體連接起來學生教師學生學號年齡性別姓名AnIntroductiontoDatabaseSystemsE-R圖(續(xù))聯(lián)系聯(lián)系本身:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實體連接起來,同時在無向邊旁標上聯(lián)系的類型(1:1、1:n或m:n)AnIntroductiontoDatabaseSystems聯(lián)系的表示方法實體型A聯(lián)系名實體型B111:1聯(lián)系實體型A聯(lián)系名1n1:n聯(lián)系實體型A實體型B聯(lián)系名mnm:n聯(lián)系實體型BAnIntroductiontoDatabaseSystems聯(lián)系的表示方法示例班級班級-班長班長111:1聯(lián)系課程選修學生mnm:n聯(lián)系班級組成學生1n1:n聯(lián)系A(chǔ)nIntroductiontoDatabaseSystems聯(lián)系的屬性課程選修學生mn成績聯(lián)系的屬性:聯(lián)系本身也是一種實體型,也可以有屬性。如果一個聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來

AnIntroductiontoDatabaseSystems六、一個實例用E-R圖表示某個工廠物資管理的概念模型實體倉庫:倉庫號、面積、電話號碼零件:零件號、名稱、規(guī)格、單價、描述供應(yīng)商:供應(yīng)商號、姓名、地址、電話號碼、帳號項目:項目號、預(yù)算、開工日期職工:職工號、姓名、年齡、職稱AnIntroductiontoDatabaseSystems一個實例實體之間的聯(lián)系如下:

(1)一個倉庫可以存放多種零件,一種零件可以存放在多個倉庫中。倉庫和零件具有多對多的聯(lián)系。用庫存量來表示某種零件在某個倉庫中的數(shù)量。(2)一個倉庫有多個職工當倉庫保管員,一個職工只能在一個倉庫工作,倉庫和職工之間是一對多的聯(lián)系。職工實體型中具有一對多的聯(lián)系

(3)職工之間具有領(lǐng)導-被領(lǐng)導關(guān)系。即倉庫主任領(lǐng)導若干保管員。(4)供應(yīng)商、項目和零件三者之間具有多對多的聯(lián)系A(chǔ)nIntroductiontoDatabaseSystems一個實例AnIntroductiontoDatabaseSystems

1.2數(shù)據(jù)模型

1.2.1兩大類數(shù)據(jù)模型

1.2.2數(shù)據(jù)模型的組成要素

1.2.3概念模型

1.2.4最常用的數(shù)據(jù)模型

1.2.5關(guān)系模型AnIntroductiontoDatabaseSystems

1.2數(shù)據(jù)模型

1.2.1兩大類數(shù)據(jù)模型

1.2.2數(shù)據(jù)模型的組成要素

1.2.3概念模型

1.2.4最常用的數(shù)據(jù)模型

1.2.5關(guān)系模型AnIntroductiontoDatabaseSystems

1.2.4最常用的數(shù)據(jù)模型非關(guān)系模型層次模型(HierarchicalModel)網(wǎng)狀模型(NetworkModel)關(guān)系模型(RelationalModel)面向?qū)ο竽P?ObjectOrientedModel)對象關(guān)系模型(ObjectRelationalModel)AnIntroductiontoDatabaseSystems系編號系名辦公地點系教研室編號教研室教研室班級號 人數(shù) 班長班級職工號 姓名研究方向?qū)W號姓名年齡教師學生一、層次模型P21層次模型示例層次模型用樹形結(jié)構(gòu)來表示各類實體以及實體間的聯(lián)系最早IBMAnIntroductiontoDatabaseSystems二、網(wǎng)狀模型學生宿舍學生教研室系教師P26網(wǎng)狀模型示例AnIntroductiontoDatabaseSystems

1.2數(shù)據(jù)模型

1.2.1兩大類數(shù)據(jù)模型

1.2.2數(shù)據(jù)模型的組成要素

1.2.3概念模型

1.2.4最常用的數(shù)據(jù)模型

1.2.5關(guān)系模型AnIntroductiontoDatabaseSystems1.2.5

關(guān)系模型關(guān)系數(shù)據(jù)庫系統(tǒng)采用關(guān)系模型作為數(shù)據(jù)的組織方式

1970年美國IBM公司SanJose研究室的研究員E.F.Codd首次提出了數(shù)據(jù)庫系統(tǒng)的關(guān)系模型計算機廠商新推出的數(shù)據(jù)庫管理系統(tǒng)幾乎都支持關(guān)系模型

AnIntroductiontoDatabaseSystems一、關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)

在用戶觀點下,關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表,它由行和列組成。學號姓名年齡性別系名年級2005004王小明19女社會學20052005006黃大鵬20男商品學20052005008張文斌18女法律2005………………學生登記表屬性元組AnIntroductiontoDatabaseSystems關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關(guān)系(Relation)一個關(guān)系對應(yīng)通常說的一張表元組(Tuple)表中的一行即為一個元組屬性(Attribute)表中的一列即為一個屬性,給每一個屬性起一個名稱即屬性名AnIntroductiontoDatabaseSystems關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))主碼(Key)表中的某個屬性組,它可以唯一確定一個元組。域(Domain)屬性的取值范圍。分量元組中的一個屬性值。關(guān)系模式對關(guān)系的描述關(guān)系名(屬性1,屬性2,…,屬性n)學生(學號,姓名,年齡,性別,系,年級)AnIntroductiontoDatabaseSystems關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例1學生、系、系與學生之間的一對多聯(lián)系:學生(學號,姓名,年齡,性別,系號,年級)系(系號,系名,辦公地點)例2系、系主任、系與系主任間的一對一聯(lián)系

學生做AnIntroductiontoDatabaseSystems關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例3學生、課程、學生與課程之間的多對多聯(lián)系:

學生(學號,姓名,年齡,性別,系號,年級)課程(課程號,課程名,學分)選修(學號,課程號,成績)AnIntroductiontoDatabaseSystems關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關(guān)系必須是規(guī)范化的,滿足一定的規(guī)范條件最基本的規(guī)范條件:關(guān)系的每一個分量必須是一個不可分的數(shù)據(jù)項,不允許表中還有表

圖1.27中工資和扣除是可分的數(shù)據(jù)項

,不符合關(guān)系模型要求

職工號姓名職稱工資扣除實

發(fā)基本津貼職務(wù)房租水電86051陳平講師13051200501601122283圖1.27一個工資表(表中有表)實例AnIntroductiontoDatabaseSystems關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關(guān)系術(shù)語一般表格的術(shù)語關(guān)系名表名關(guān)系模式表頭(表格的描述)關(guān)系(一張)二維表元組記錄或行屬性列屬性名列名屬性值列值分量一條記錄中的一個列值非規(guī)范關(guān)系表中有表(大表中嵌有小表)表1.2術(shù)語對比AnIntroductiontoDatabaseSystems二、關(guān)系數(shù)據(jù)模型的操縱與完整性約束數(shù)據(jù)操作是集合操作,操作對象和操作結(jié)果都是關(guān)系查詢插入刪除更新數(shù)據(jù)操作是集合操作,操作對象和操作結(jié)果都是關(guān)系,即若干元組的集合存取路徑對用戶隱蔽,用戶只要指出“干什么”,不必詳細說明“怎么干”AnIntroductiontoDatabaseSystems關(guān)系數(shù)據(jù)模型的操縱與完整性約束(續(xù))關(guān)系的完整性約束條件

實體完整性參照完整性用戶定義的完整性AnIntroductiontoDatabaseSystems三、關(guān)系數(shù)據(jù)模型的存儲結(jié)構(gòu)實體及實體間的聯(lián)系都用表來表示表以文件形式存儲有的DBMS一個表對應(yīng)一個操作系統(tǒng)文件有的DBMS自己設(shè)計文件結(jié)構(gòu)AnIntroductiontoDatabaseSystems四、關(guān)系數(shù)據(jù)模型的優(yōu)缺點優(yōu)點建立在嚴格的數(shù)學概念的基礎(chǔ)上概念單一實體和各類聯(lián)系都用關(guān)系來表示對數(shù)據(jù)的檢索結(jié)果也是關(guān)系關(guān)系模型的存取路徑對用戶透明具有更高的數(shù)據(jù)獨立性,更好的安全保密性簡化了程序員的工作和數(shù)據(jù)庫開發(fā)建立的工作AnIntroductiontoDatabaseSystems關(guān)系數(shù)據(jù)模型的優(yōu)缺點(續(xù))缺點存取路徑對用戶透明導致查詢效率往往不如非關(guān)系數(shù)據(jù)模型為提高性能,必須對用戶的查詢請求進行優(yōu)化增加了開發(fā)DBMS的難度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é)AnIntroductiontoDatabaseSystems數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)(續(xù))1.3.1數(shù)據(jù)庫系統(tǒng)模式的概念1.3.2

數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)

1.3.3數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性

AnIntroductiontoDatabaseSystems1.3.1數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)考察數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)可以有多種不同的層次和角度:1:從數(shù)據(jù)庫管理系統(tǒng)的角度:三級模式結(jié)構(gòu)

這是數(shù)據(jù)庫管理系統(tǒng)內(nèi)部的體系結(jié)構(gòu)2:從數(shù)據(jù)庫最終用戶角度看:C/S,單用戶,多用戶,分布式結(jié)構(gòu)等AnIntroductiontoDatabaseSystems1:數(shù)據(jù)庫系統(tǒng)模式的概念類型(Type)和值(Value)類型是指對某一類數(shù)據(jù)的結(jié)構(gòu)和屬性的說明值是類型的一個具體賦值例:類型—學生類型(學號,姓名,年齡)

值——(PB00001001,張三,20)模式(Schema)和實例(Instance)模式是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,它僅僅涉及類型的描述,不涉及具體的值模式的一個具體值稱為模式的一個實例AnIntroductiontoDatabaseSystems模式和實例(2)學生表(學號,姓名,年齡)課程表(課程號,課程名,學分)選課表(學號,課程號,成績)模式兩個實例實際中的模式描述比本例要詳細得多AnIntroductiontoDatabaseSystems模式和實例(1)一個模式可有很多實例模式反映數(shù)據(jù)的結(jié)構(gòu)及聯(lián)系,實例反映的是某一時刻數(shù)據(jù)庫的狀態(tài)模式相對穩(wěn)定,而實例相對變動AnIntroductiontoDatabaseSystems2:數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)外模式(子模式、用戶模式)概念模式(模式、邏輯模式)內(nèi)模式(存儲模式)AnIntroductiontoDatabaseSystemsAnIntroductiontoDatabaseSystems概念模式(模式、邏輯模式)數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述數(shù)據(jù)記錄由哪些數(shù)據(jù)項構(gòu)成數(shù)據(jù)項的名字、類型、取值范圍數(shù)據(jù)之間的聯(lián)系、數(shù)據(jù)的完整性等

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論