數(shù)據(jù)庫(kù)基礎(chǔ)培訓(xùn)教程課件_第1頁(yè)
數(shù)據(jù)庫(kù)基礎(chǔ)培訓(xùn)教程課件_第2頁(yè)
數(shù)據(jù)庫(kù)基礎(chǔ)培訓(xùn)教程課件_第3頁(yè)
數(shù)據(jù)庫(kù)基礎(chǔ)培訓(xùn)教程課件_第4頁(yè)
數(shù)據(jù)庫(kù)基礎(chǔ)培訓(xùn)教程課件_第5頁(yè)
已閱讀5頁(yè),還剩213頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第1章數(shù)據(jù)庫(kù)基礎(chǔ)數(shù)據(jù)庫(kù)系統(tǒng)概述1.1數(shù)據(jù)管理技術(shù)的發(fā)展1.2數(shù)據(jù)模型1.3關(guān)系數(shù)據(jù)庫(kù)1.4數(shù)據(jù)庫(kù)系統(tǒng)的體系結(jié)構(gòu)1.5數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介1.61第1章數(shù)據(jù)庫(kù)基礎(chǔ)數(shù)據(jù)庫(kù)系統(tǒng)概述1.1數(shù)據(jù)管理技術(shù)的發(fā)展1隨著科學(xué)技術(shù)和社會(huì)經(jīng)濟(jì)的飛速發(fā)展,人們掌握的信息量急劇增加,要充分地開(kāi)發(fā)和利用這些信息資源,就必須有一種新技術(shù)能對(duì)大量的信息進(jìn)行識(shí)別、存儲(chǔ)、處理與傳播。隨著計(jì)算機(jī)軟硬件技術(shù)的發(fā)展,20世紀(jì)60年代末,數(shù)據(jù)庫(kù)技術(shù)應(yīng)運(yùn)而生,并從70年代起得到了迅速的發(fā)展和廣泛的應(yīng)用。數(shù)據(jù)庫(kù)技術(shù)主要研究如何科學(xué)地組織和存儲(chǔ)數(shù)據(jù),如何高效地獲取和處理數(shù)據(jù)。數(shù)據(jù)庫(kù)技術(shù)作為數(shù)據(jù)管理的最新技術(shù),目前已廣泛應(yīng)用于各個(gè)領(lǐng)域。對(duì)于一個(gè)國(guó)家來(lái)說(shuō),數(shù)據(jù)庫(kù)的建設(shè)規(guī)模、數(shù)據(jù)庫(kù)信息量的大小和使用頻度已經(jīng)成為衡量這個(gè)國(guó)家信息化程度的重要標(biāo)志。2隨著科學(xué)技術(shù)和社會(huì)經(jīng)濟(jì)的飛速發(fā)展,人們掌握的信息量1.1數(shù)據(jù)庫(kù)系統(tǒng)概述1.信息:信息是人腦對(duì)現(xiàn)實(shí)世界中的客觀事物以及事物之間聯(lián)系的抽象反映,它向我們提供了關(guān)于現(xiàn)實(shí)世界實(shí)際存在的事物及其聯(lián)系的有用知識(shí)。2.數(shù)據(jù):數(shù)據(jù)是人們用各種物理符號(hào),把信息按一定格式記載下來(lái)的有意義的符號(hào)組合。數(shù)據(jù)不僅僅是數(shù)字,還可以是文字、圖象、聲音等各種表現(xiàn)形式。數(shù)據(jù)經(jīng)數(shù)字化后可以存入計(jì)算機(jī)中,是數(shù)據(jù)庫(kù)中存儲(chǔ)的基本對(duì)象。數(shù)據(jù)和它的語(yǔ)義是不可分割的。31.1數(shù)據(jù)庫(kù)系統(tǒng)概述1.信息:信息是人腦對(duì)現(xiàn)實(shí)世界中的客1.1數(shù)據(jù)庫(kù)系統(tǒng)概述數(shù)據(jù)的形式不能完全表達(dá)其內(nèi)容。例如:(李明,78)我們可以賦予它一定的語(yǔ)義,它表示李明的期末考試平均成績(jī)?yōu)?8分。如果不了解其語(yǔ)義,則無(wú)法對(duì)其進(jìn)行解釋,甚至解釋為李明的年齡為78。99:8179,7954舅舅:不要吃酒,吃酒誤事1×1=1一成不變10002=100×100×100千方百計(jì)7/8七上八下7÷2不三不四41.1數(shù)據(jù)庫(kù)系統(tǒng)概述數(shù)據(jù)的形式不能完全表達(dá)其內(nèi)容。例如:41.1數(shù)據(jù)庫(kù)系統(tǒng)概述3.數(shù)據(jù)處理:指對(duì)各種形式的數(shù)據(jù)進(jìn)行收集、整理、加工、存儲(chǔ)和傳播的一系列活動(dòng)的總和。其目的之一是從大量的原始數(shù)據(jù)中提取出對(duì)人們有價(jià)值的信息,作為行動(dòng)和決策的依據(jù);目的之二是為了借助計(jì)算機(jī)科學(xué)地保存和管理大量的復(fù)雜的數(shù)據(jù),以便人們能方便地充分利用這些信息資源。4.數(shù)據(jù)庫(kù)(DB):以一定的方式保存在計(jì)算機(jī)存儲(chǔ)設(shè)備上的相互關(guān)聯(lián)的數(shù)據(jù)的集合。51.1數(shù)據(jù)庫(kù)系統(tǒng)概述3.數(shù)據(jù)處理:指對(duì)各種形式的數(shù)據(jù)進(jìn)行1.1數(shù)據(jù)庫(kù)系統(tǒng)概述5.數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)

:用于幫助我們管理輸入到計(jì)算機(jī)中的大量數(shù)據(jù)。如用于創(chuàng)建數(shù)據(jù)庫(kù),向數(shù)據(jù)庫(kù)中存儲(chǔ)數(shù)據(jù),修改數(shù)據(jù)庫(kù)中的數(shù)據(jù),從數(shù)據(jù)庫(kù)中提取信息等。一個(gè)DBMS應(yīng)具備如下功能:(1)數(shù)據(jù)定義功能(2)數(shù)據(jù)操縱功能(3)數(shù)據(jù)查詢功能(4)數(shù)據(jù)控制功能(5)數(shù)據(jù)庫(kù)通信功能61.1數(shù)據(jù)庫(kù)系統(tǒng)概述5.數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS):1.1數(shù)據(jù)庫(kù)系統(tǒng)概述6.數(shù)據(jù)庫(kù)管理員:數(shù)據(jù)庫(kù)的建立、使用和維護(hù)只靠DBMS是不夠的,還需要有專門的人員來(lái)完成,這些人員稱為數(shù)據(jù)庫(kù)管理員7.數(shù)據(jù)庫(kù)系統(tǒng)(DBS):在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫(kù)的系統(tǒng)。除了相關(guān)的硬件之外,數(shù)據(jù)庫(kù)系統(tǒng)還包括數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫(kù)管理員和用戶。71.1數(shù)據(jù)庫(kù)系統(tǒng)概述6.數(shù)據(jù)庫(kù)管理員:數(shù)據(jù)庫(kù)的建立、使用1.2數(shù)據(jù)管理技術(shù)的發(fā)展什么是數(shù)據(jù)管理?對(duì)數(shù)據(jù)進(jìn)行分類、組織、編碼、存儲(chǔ)、檢索和維護(hù),是數(shù)據(jù)處理的中心問(wèn)題。數(shù)據(jù)管理技術(shù)的發(fā)展動(dòng)力應(yīng)用需求的推動(dòng)計(jì)算機(jī)硬件的發(fā)展計(jì)算機(jī)軟件的發(fā)展數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程人工管理階段(40年代中--50年代中)文件系統(tǒng)階段(50年代末--60年代中)數(shù)據(jù)庫(kù)系統(tǒng)階段(60年代末--現(xiàn)在)81.2數(shù)據(jù)管理技術(shù)的發(fā)展什么是數(shù)據(jù)管理?81.2數(shù)據(jù)管理技術(shù)的發(fā)展1.人工管理階段在計(jì)算機(jī)發(fā)展的初級(jí)階段,計(jì)算機(jī)硬件本身還不具備象磁盤這樣的可直接存取的存儲(chǔ)設(shè)備,因此也無(wú)法實(shí)現(xiàn)對(duì)大量數(shù)據(jù)的保存,也沒(méi)有用來(lái)管理數(shù)據(jù)的相應(yīng)軟件,計(jì)算機(jī)主要用于科學(xué)計(jì)算。這個(gè)階段的數(shù)據(jù)管理是以人工管理的方式進(jìn)行的,人們還沒(méi)有形成一套數(shù)據(jù)管理的完整的概念。91.2數(shù)據(jù)管理技術(shù)的發(fā)展1.人工管理階段91.2數(shù)據(jù)管理技術(shù)的發(fā)展人工管理階段的主要特點(diǎn):(1)數(shù)據(jù)不保存。計(jì)算機(jī)主要用于科學(xué)計(jì)算,計(jì)算時(shí)輸入數(shù)據(jù),用完就撤走數(shù)據(jù)。(2)還沒(méi)有文件的概念。數(shù)據(jù)由每個(gè)程序的程序員自行組織和安排。(3)數(shù)據(jù)不共享:每組數(shù)據(jù)和一個(gè)應(yīng)用程序相對(duì)應(yīng),因此可能導(dǎo)致大量的數(shù)據(jù)重復(fù)。(4)沒(méi)有形成完整的數(shù)據(jù)管理的概念,更沒(méi)有對(duì)數(shù)據(jù)進(jìn)行管理的軟件系統(tǒng)。每個(gè)程序都要包括數(shù)據(jù)存取方法、輸入/輸出方法和數(shù)據(jù)組織方法,程序直接面向存儲(chǔ)結(jié)構(gòu),因此存儲(chǔ)結(jié)構(gòu)的任何修改都將導(dǎo)致程序的修改。程序和數(shù)據(jù)不具有獨(dú)立性。101.2數(shù)據(jù)管理技術(shù)的發(fā)展人工管理階段的主要特點(diǎn):101.2數(shù)據(jù)管理技術(shù)的發(fā)展人工管理階段的特點(diǎn)可以用下圖來(lái)描述:應(yīng)用程序1數(shù)據(jù)集1應(yīng)用程序2數(shù)據(jù)集2應(yīng)用程序n數(shù)據(jù)集n…………111.2數(shù)據(jù)管理技術(shù)的發(fā)展人工管理階段的特點(diǎn)可以用下圖來(lái)描述1.2數(shù)據(jù)管理技術(shù)的發(fā)展2.文件系統(tǒng)階段隨著計(jì)算機(jī)軟硬件技術(shù)的發(fā)展,如直接存儲(chǔ)設(shè)備的產(chǎn)生,操作系統(tǒng)、高級(jí)語(yǔ)言及數(shù)據(jù)管理軟件的出現(xiàn),計(jì)算機(jī)不僅用于科學(xué)計(jì)算,也開(kāi)始大量用于信息管理。數(shù)據(jù)可以以文件的形式長(zhǎng)期獨(dú)立地保存在磁盤上,且可以由多個(gè)程序反復(fù)使用;操作系統(tǒng)及高級(jí)語(yǔ)言或數(shù)據(jù)管理軟件提供了對(duì)數(shù)據(jù)的存取和管理功能,這就是文件系統(tǒng)階段。121.2數(shù)據(jù)管理技術(shù)的發(fā)展2.文件系統(tǒng)階段121.2數(shù)據(jù)管理技術(shù)的發(fā)展文件系統(tǒng)階段的主要特點(diǎn):(1)數(shù)據(jù)可以長(zhǎng)期保存在磁盤上,因此可以重復(fù)使用。數(shù)據(jù)不再屬于某個(gè)特定的程序,可以由多個(gè)程序反復(fù)使用。(2)數(shù)據(jù)的物理結(jié)構(gòu)和邏輯結(jié)構(gòu)有了區(qū)別,但較簡(jiǎn)單。程序開(kāi)始通過(guò)文件名和數(shù)據(jù)打交道,不必關(guān)心數(shù)據(jù)的物理存放位置,對(duì)數(shù)據(jù)的讀/寫方法由文件系統(tǒng)提供。(3)程序和數(shù)據(jù)之間有了一定的獨(dú)立性。應(yīng)用程序通過(guò)文件系統(tǒng)對(duì)數(shù)據(jù)文件中的數(shù)據(jù)進(jìn)行存取和加工,程序員不必過(guò)多地考慮數(shù)據(jù)的物理存儲(chǔ)細(xì)節(jié),并且,數(shù)據(jù)在存儲(chǔ)上的改變不一定反映在程序上,節(jié)省了維護(hù)工作。(4)出現(xiàn)了多種文件存儲(chǔ)形式及相應(yīng)的訪問(wèn)方式;但文件之間是獨(dú)立的,它們之間的聯(lián)系要通過(guò)程序去構(gòu)造,文件的共享性也還比較差。數(shù)據(jù)的存取基本上以記錄為單位。131.2數(shù)據(jù)管理技術(shù)的發(fā)展文件系統(tǒng)階段的主要特點(diǎn):131.2數(shù)據(jù)管理技術(shù)的發(fā)展文件系統(tǒng)階段程序和數(shù)據(jù)之間的關(guān)系可以用下圖來(lái)描述:應(yīng)用程序1文件1應(yīng)用程序2文件2應(yīng)用程序n文件n…………文件系統(tǒng)141.2數(shù)據(jù)管理技術(shù)的發(fā)展文件系統(tǒng)階段程序和數(shù)據(jù)之間1.2數(shù)據(jù)管理技術(shù)的發(fā)展雖然文件系統(tǒng)比人工管理有了長(zhǎng)足的進(jìn)步,但是文件系統(tǒng)所能提供的數(shù)據(jù)存取方法和操作數(shù)據(jù)的手段還是非常的有限。數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)和程序之間的依賴關(guān)系并未根本改變;數(shù)據(jù)冗余大;數(shù)據(jù)的重復(fù)以及數(shù)據(jù)之間沒(méi)有建立起相互聯(lián)系還會(huì)造成數(shù)據(jù)的不一致性。隨著信息時(shí)代的到來(lái),人們要處理的信息量急劇增加,對(duì)數(shù)據(jù)的處理要求也越來(lái)越復(fù)雜,文件系統(tǒng)的功能已經(jīng)不能適應(yīng)新的需求,而數(shù)據(jù)庫(kù)技術(shù)也正是在這種需求的推動(dòng)下逐步產(chǎn)生的。151.2數(shù)據(jù)管理技術(shù)的發(fā)展雖然文件系統(tǒng)比人工管理有1.2數(shù)據(jù)管理技術(shù)的發(fā)展3.數(shù)據(jù)庫(kù)系統(tǒng)階段數(shù)據(jù)庫(kù)系統(tǒng)階段使用數(shù)據(jù)庫(kù)技術(shù)來(lái)管理數(shù)據(jù)。它克服了文件系統(tǒng)的不足,并增強(qiáng)了許多新功能。在這一階段,數(shù)據(jù)由數(shù)據(jù)庫(kù)管理系統(tǒng)統(tǒng)一控制,數(shù)據(jù)不再面向某個(gè)應(yīng)用而是面向整個(gè)系統(tǒng),因此數(shù)據(jù)可以被多個(gè)用戶、多個(gè)應(yīng)用共享。161.2數(shù)據(jù)管理技術(shù)的發(fā)展3.數(shù)據(jù)庫(kù)系統(tǒng)階段161.2數(shù)據(jù)管理技術(shù)的發(fā)展數(shù)據(jù)庫(kù)系統(tǒng)階段的特點(diǎn):(1)能根據(jù)不同的需要按不同的方法組織數(shù)據(jù),以最大限度地提高用戶或應(yīng)用程序訪問(wèn)數(shù)據(jù)的效率。(2)數(shù)據(jù)庫(kù)不僅能夠保存數(shù)據(jù)本身,還能保存數(shù)據(jù)之間的相互聯(lián)系,保證了對(duì)數(shù)據(jù)修改的一致性。(3)相同的數(shù)據(jù)可以共享,降低了數(shù)據(jù)的冗余度。(4)數(shù)據(jù)具有較高的獨(dú)立性,數(shù)據(jù)的組織和存儲(chǔ)方法與應(yīng)用程序相互獨(dú)立,互不依賴,大大降低了應(yīng)用程序的開(kāi)發(fā)代價(jià)和維護(hù)代價(jià)。(5)提供了一整套的安全機(jī)制來(lái)保證數(shù)據(jù)的安全、可靠。(6)可以給數(shù)據(jù)定義一些約束條件來(lái)保證數(shù)據(jù)的正確性。171.2數(shù)據(jù)管理技術(shù)的發(fā)展數(shù)據(jù)庫(kù)系統(tǒng)階段的特點(diǎn):171.2數(shù)據(jù)管理技術(shù)的發(fā)展數(shù)據(jù)庫(kù)系統(tǒng)階段應(yīng)用程序和數(shù)據(jù)庫(kù)之間的關(guān)系可以用下圖來(lái)表示:應(yīng)用程序1應(yīng)用程序2應(yīng)用程序n……數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)181.2數(shù)據(jù)管理技術(shù)的發(fā)展數(shù)據(jù)庫(kù)系統(tǒng)階段應(yīng)用程序和數(shù)1.3數(shù)據(jù)模型數(shù)據(jù)庫(kù)是某個(gè)企業(yè)、組織或部門所涉及的數(shù)據(jù)的綜合,它不僅要反映數(shù)據(jù)本身的內(nèi)容,而且要反映數(shù)據(jù)之間的聯(lián)系。由于計(jì)算機(jī)不可能直接處理現(xiàn)實(shí)世界中的具體事物,所以人們必須事先把具體事物轉(zhuǎn)換成計(jì)算機(jī)能夠處理的數(shù)據(jù)。在數(shù)據(jù)庫(kù)技術(shù)中使用數(shù)據(jù)模型來(lái)抽象、表示現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。

模型:對(duì)現(xiàn)實(shí)世界特征的模擬和抽象。

數(shù)據(jù)模型:對(duì)現(xiàn)實(shí)世界數(shù)據(jù)特征的模擬和抽象。191.3數(shù)據(jù)模型數(shù)據(jù)庫(kù)是某個(gè)企業(yè)、組織或部門所涉1.3數(shù)據(jù)模型現(xiàn)實(shí)世界中的數(shù)據(jù)要進(jìn)入到數(shù)據(jù)庫(kù)中,需要經(jīng)過(guò)人們的認(rèn)識(shí)、理解、整理、規(guī)范和加工??梢园堰@一過(guò)程劃分成三個(gè)主要階段,即現(xiàn)實(shí)世界階段、信息世界階段和機(jī)器世界階段。現(xiàn)實(shí)世界中的數(shù)據(jù)經(jīng)過(guò)人們的認(rèn)識(shí)和抽象,形成信息世界;在信息世界中用概念模型來(lái)描述數(shù)據(jù)及其聯(lián)系,概念模型按用戶的觀點(diǎn)對(duì)數(shù)據(jù)和信息進(jìn)行建模,獨(dú)立于具體的機(jī)器和DBMS;根據(jù)所使用的具體機(jī)器和DBMS,需要對(duì)概念模型進(jìn)行進(jìn)一步轉(zhuǎn)換,形成在具體機(jī)器環(huán)境下可以實(shí)現(xiàn)的數(shù)據(jù)模型。201.3數(shù)據(jù)模型現(xiàn)實(shí)世界中的數(shù)據(jù)要進(jìn)入到數(shù)據(jù)庫(kù)中,1.3數(shù)據(jù)模型三個(gè)階段之間的相互關(guān)系:不依賴于具體機(jī)器和DBMS依賴于具體機(jī)器和DBMS現(xiàn)實(shí)世界信息世界:概念模型機(jī)器世界:某DBMS支持的數(shù)據(jù)模型抽象轉(zhuǎn)換211.3數(shù)據(jù)模型三個(gè)階段之間的相互關(guān)系:不依賴于具1.3.1現(xiàn)實(shí)世界1.實(shí)體:現(xiàn)實(shí)世界中客觀存在并可以相互區(qū)分的事物稱。如學(xué)生、課程、零件、案件等都是實(shí)體。2.實(shí)體的特征:每一個(gè)實(shí)體具有的特征。如“學(xué)生”實(shí)體具有學(xué)號(hào)、姓名、性別等特征;“零件”實(shí)體具有名稱、規(guī)格型號(hào)、生產(chǎn)日期、單價(jià)等特征。3.實(shí)體集:具有相同特征的一類實(shí)體的集合構(gòu)成了實(shí)體集。例如,所有的學(xué)生構(gòu)成了“學(xué)生”實(shí)體集。4.標(biāo)識(shí)特征:在一個(gè)實(shí)體集中,用于區(qū)分實(shí)體的特征稱。例如,對(duì)于學(xué)生實(shí)體,學(xué)號(hào)可以作為其標(biāo)識(shí)特征,而性別則不能作為其標(biāo)識(shí)特征。221.3.1現(xiàn)實(shí)世界1.實(shí)體:現(xiàn)實(shí)世界中客觀存在并可以相互1.3.2信息世界人們對(duì)現(xiàn)實(shí)世界的對(duì)象進(jìn)行抽象,并對(duì)其進(jìn)行命名、分類,在信息世界用概念模型來(lái)對(duì)其進(jìn)行描述。信息世界涉及的主要概念:1.實(shí)體:對(duì)應(yīng)于現(xiàn)實(shí)世界的實(shí)體。如一個(gè)學(xué)生、一門課等。2.屬性:對(duì)應(yīng)于實(shí)體的特征。一個(gè)實(shí)體可以由若干個(gè)屬性來(lái)刻畫。例如,學(xué)生實(shí)體可以有學(xué)號(hào)、姓名、性別、班級(jí)、年齡等屬性。3.碼:對(duì)應(yīng)于實(shí)體的標(biāo)識(shí)特征。例如,學(xué)生實(shí)體可以用學(xué)號(hào)來(lái)唯一標(biāo)識(shí),因此學(xué)號(hào)可以作為學(xué)生實(shí)體的碼。231.3.2信息世界人們對(duì)現(xiàn)實(shí)世界的對(duì)象進(jìn)行抽象,1.3.2信息世界4.域:屬性的取值范圍稱為該屬性的域。例如,姓名的域?yàn)樽址希荒挲g的域?yàn)椴恍∮诹愕恼麛?shù);性別的域?yàn)?男,女)。5.實(shí)體型:用實(shí)體名及其屬性名集合來(lái)描述實(shí)體,例如,學(xué)生實(shí)體型描述為:學(xué)生(學(xué)號(hào),姓名,性別,年齡)例如,課程實(shí)體型可以描述為:課程(課程號(hào),課程名,學(xué)分)6.實(shí)體集:同型實(shí)體的集合構(gòu)成了實(shí)體集。例如,全體學(xué)生構(gòu)成了學(xué)生實(shí)體集。241.3.2信息世界4.域:屬性的取值范圍稱為該屬性的域1.3.2信息世界7.聯(lián)系:現(xiàn)實(shí)世界中的事物之間通常都是有聯(lián)系的,這些聯(lián)系在信息世界中反映為實(shí)體內(nèi)部的聯(lián)系和實(shí)體之間的聯(lián)系。實(shí)體內(nèi)部的聯(lián)系通常指組成實(shí)體的各屬性之間的聯(lián)系;實(shí)體之間的聯(lián)系通常指不同實(shí)體集之間的聯(lián)系。這些聯(lián)系總的來(lái)說(shuō)可以劃分為三種:一對(duì)一聯(lián)系一對(duì)多(或多對(duì)一)聯(lián)系多對(duì)多聯(lián)系。這里討論實(shí)體之間的聯(lián)系251.3.2信息世界7.聯(lián)系:現(xiàn)實(shí)世界中的事物之間通常都1.3.2信息世界(1)一對(duì)一聯(lián)系:如果實(shí)體集A與實(shí)體集B之間存在聯(lián)系,并且對(duì)于實(shí)體集A中的任意一個(gè)實(shí)體,在實(shí)體集B中至多只有一個(gè)實(shí)體與之對(duì)應(yīng);而對(duì)于實(shí)體集B中的任意一個(gè)實(shí)體,在實(shí)體集A中也至多只有一個(gè)實(shí)體與之對(duì)應(yīng),則稱實(shí)體集A和實(shí)體集B之間存在著一對(duì)一的聯(lián)系(表示為1:1)。261.3.2信息世界(1)一對(duì)一聯(lián)系:如果實(shí)體集A與實(shí)體集1.3.2信息世界例如,“公司”是一種實(shí)體,“總經(jīng)理”也是一種實(shí)體。如果按照語(yǔ)義,一個(gè)公司只能有一個(gè)總經(jīng)理,而一個(gè)總經(jīng)理只能管理某一個(gè)公司,則“公司”和“總經(jīng)理”實(shí)體之間的聯(lián)系就是一對(duì)一的聯(lián)系。如下圖:公司管理總經(jīng)理11271.3.2信息世界例如,“公司”是一種實(shí)體,1.3.2信息世界(2)一對(duì)多聯(lián)系:如果實(shí)體集A與實(shí)體集B之間存在聯(lián)系,并且對(duì)于實(shí)體集A中的任意一個(gè)實(shí)體,在實(shí)體集B中可以有多個(gè)實(shí)體與之對(duì)應(yīng);而對(duì)于實(shí)體集B中的任意一個(gè)實(shí)體,在實(shí)體集A中至多只有一個(gè)實(shí)體與之對(duì)應(yīng),則稱實(shí)體集A到實(shí)體集B的聯(lián)系是一對(duì)多的聯(lián)系(表示為1:n)。281.3.2信息世界(2)一對(duì)多聯(lián)系:如果實(shí)體集A與實(shí)體1.3.2信息世界

例如,“部門”是一種實(shí)體,“職工”也是一種實(shí)體。如果按照語(yǔ)義,一個(gè)部門可以有多個(gè)職工,而一個(gè)職工只能歸屬于一個(gè)部門,則“部門”實(shí)體到“職工”實(shí)體的聯(lián)系就是一對(duì)多的聯(lián)系,如下圖:部門屬于職工1n291.3.2信息世界例如,“部門”是一種實(shí)體,1.3.2信息世界(3)多對(duì)多聯(lián)系:如果實(shí)體集A與實(shí)體集B之間存在聯(lián)系,并且對(duì)于實(shí)體集A中的任意一個(gè)實(shí)體,在實(shí)體集B中可以有多個(gè)實(shí)體與之對(duì)應(yīng);而對(duì)于實(shí)體集B中的任意一個(gè)實(shí)體,在實(shí)體集A中也可以有多個(gè)實(shí)體與之對(duì)應(yīng),則稱實(shí)體集A到實(shí)體集B的聯(lián)系是多對(duì)多的聯(lián)系(表示為m:n)。301.3.2信息世界(3)多對(duì)多聯(lián)系:如果實(shí)體集A與實(shí)1.3.2信息世界

例如,“學(xué)生”是一種實(shí)體,“課程”也是一種實(shí)體?!皩W(xué)生”實(shí)體到“課程”實(shí)體的聯(lián)系就是多對(duì)多的聯(lián)系。因?yàn)橐粋€(gè)學(xué)生可以學(xué)習(xí)多門課程,而一門課程又可以有多個(gè)學(xué)生來(lái)學(xué)習(xí)。如下圖:學(xué)生選修課程mn311.3.2信息世界例如,“學(xué)生”是一種實(shí)體,“課1.3.2信息世界

兩個(gè)以上的實(shí)體之間也存在一對(duì)一、一對(duì)多和多對(duì)多的聯(lián)系。例如“郵局”是一種實(shí)體,“郵票”是一種實(shí)體,“顧客”是一種實(shí)體,這三個(gè)實(shí)體之間存在著一種關(guān)系,這里稱之為“購(gòu)買”。它表示,一個(gè)顧客可以在多個(gè)郵局中買多種郵票;一個(gè)郵局可以把多種郵票出售給多個(gè)顧客;一種郵票可以在多個(gè)郵局中被多個(gè)顧客所購(gòu)買。這樣的三元關(guān)系可以表示成:321.3.2信息世界兩個(gè)以上的實(shí)體之間也存在一對(duì)一、一對(duì)1.3.2信息世界郵局購(gòu)買顧客m郵票Pn331.3.2信息世界郵局購(gòu)買顧客m郵票Pn331.3.2信息世界8.概念模型:概念模型是對(duì)信息世界的建模,因此,概念模型應(yīng)該能夠方便、準(zhǔn)確地表示出信息世界中的常用概念。概念模型有多種表示方法,其中最常用的是“實(shí)體-聯(lián)系方法”(EntityRelationshipApproach),簡(jiǎn)稱E-R方法,E-R方法用E-R圖來(lái)描述現(xiàn)實(shí)世界的概念模型,E-R圖提供了表示實(shí)體、屬性和聯(lián)系的方法。341.3.2信息世界8.概念模型:概念模型是對(duì)信息世界的建1.3.2信息世界(1)實(shí)體型:用矩形表示,在矩形內(nèi)寫明實(shí)體名。例如,學(xué)生實(shí)體和課程實(shí)體用E-R圖表示如下:學(xué)生課程(2)屬性:用橢圓形表示,并用無(wú)向邊將其與實(shí)體連接起來(lái)。例如,學(xué)生實(shí)體及其屬性用E-R圖表示如下:學(xué)生學(xué)號(hào)姓名性別年齡351.3.2信息世界(1)實(shí)體型:用矩形表示,在矩形內(nèi)寫1.3.2信息世界(3)聯(lián)系:用菱形表示,在菱形框內(nèi)寫明聯(lián)系的名稱,并用無(wú)向邊將其與有關(guān)的實(shí)體連接起來(lái),同時(shí)在無(wú)向邊旁標(biāo)上聯(lián)系的類型。注意:聯(lián)系本身也是一種實(shí)體型,也可以有屬性。如果一個(gè)聯(lián)系具有屬性,則這些屬性也要用無(wú)向邊與該聯(lián)系連接起來(lái)。361.3.2信息世界(3)聯(lián)系:用菱形表示,在菱形框內(nèi)寫1.3.2信息世界例如,下圖表示了學(xué)生實(shí)體和課程實(shí)體之間的聯(lián)系“選修”,每個(gè)學(xué)生選修某一門課程會(huì)產(chǎn)生一個(gè)成績(jī),因此,“選修”聯(lián)系有一個(gè)屬性“成績(jī)”,學(xué)生和課程實(shí)體之間是多對(duì)多的聯(lián)系。課程號(hào)課程名m學(xué)生選修課程n學(xué)分學(xué)號(hào)姓名性別年齡成績(jī)371.3.2信息世界例如,下圖表示了學(xué)生實(shí)體和課程實(shí)體之1.3.2信息世界用E-R圖表示的概念模型獨(dú)立于具體的DBMS所支持的數(shù)據(jù)模型,是各種數(shù)據(jù)模型的共同基礎(chǔ),因此比數(shù)據(jù)模型更一般、更抽象、更接近現(xiàn)實(shí)世界。381.3.2信息世界用E-R圖表示的概念模型獨(dú)立于具體的1.3.3機(jī)器世界概念模型是獨(dú)立于機(jī)器的,需要轉(zhuǎn)換成具體的DBMS所能識(shí)別的數(shù)據(jù)模型,才能將數(shù)據(jù)和數(shù)據(jù)之間的聯(lián)系保存到計(jì)算機(jī)上。在計(jì)算機(jī)中可以用不同的方法來(lái)表示數(shù)據(jù)與數(shù)據(jù)之間的聯(lián)系,把表示數(shù)據(jù)與數(shù)據(jù)之間的聯(lián)系的方法稱為數(shù)據(jù)模型。數(shù)據(jù)庫(kù)領(lǐng)域常見(jiàn)的數(shù)據(jù)模型有4種:(1)層次模型(HierarchicalModel)(2)網(wǎng)狀模型(NetworkModel)(3)關(guān)系模型(RelationalModel)(4)面向?qū)ο蟮哪P?ObjectOrientedModel)其中,關(guān)系模型是目前使用最廣泛的數(shù)據(jù)模型。391.3.3機(jī)器世界概念模型是獨(dú)立于機(jī)器的,需要轉(zhuǎn)換成具1.4關(guān)系數(shù)據(jù)庫(kù)這里介紹的關(guān)系模型是用戶觀點(diǎn)下的數(shù)據(jù)模型,實(shí)際上關(guān)系模型是可以在某種DBMS的支持下、用某種語(yǔ)言進(jìn)行描述的,通過(guò)DBMS提供的功能實(shí)現(xiàn)對(duì)其進(jìn)行存儲(chǔ)和實(shí)施各種操作。把支持關(guān)系模型的數(shù)據(jù)庫(kù)管理系統(tǒng)稱為關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),簡(jiǎn)稱RDBMS。401.4關(guān)系數(shù)據(jù)庫(kù)這里介紹的關(guān)系模型是用戶觀點(diǎn)下的數(shù)據(jù)模1.4.1關(guān)系模型關(guān)系模型的組成:關(guān)系數(shù)據(jù)結(jié)構(gòu)關(guān)系操作集合關(guān)系完整性約束411.4.1關(guān)系模型關(guān)系模型的組成:411.4.1關(guān)系模型1.關(guān)系數(shù)據(jù)結(jié)構(gòu)

在用戶觀點(diǎn)下,關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表,它由行和列組成。例如,學(xué)生信息表:學(xué)號(hào)姓名性別年齡980010101張濤明心女19……………………421.4.1關(guān)系模型1.關(guān)系數(shù)據(jù)結(jié)構(gòu)學(xué)號(hào)姓名性別年齡981.4.1關(guān)系模型(1)關(guān)系:一個(gè)關(guān)系對(duì)應(yīng)于一張二維表。(2)關(guān)系名:如“學(xué)生信息”。(3)元組:表中的一行,對(duì)應(yīng)于存儲(chǔ)文件中的一個(gè)記錄。(4)屬性:表中的一列。(5)屬性名:給每個(gè)屬性起一個(gè)名字。對(duì)應(yīng)于存儲(chǔ)文件中的字段。431.4.1關(guān)系模型(1)關(guān)系:一個(gè)關(guān)系對(duì)應(yīng)于一張二維1.4.1關(guān)系模型(6)候選碼:如果在一個(gè)關(guān)系中,存在多個(gè)屬性(或?qū)傩越M合)都能用來(lái)唯一標(biāo)識(shí)該關(guān)系的元組,這些屬性(或?qū)傩越M合)都稱為該關(guān)系的候選碼(或候選關(guān)鍵字)。例如,假設(shè)“學(xué)生信息”關(guān)系中的姓名沒(méi)有重名現(xiàn)象,則學(xué)號(hào)和姓名都是候選碼。(7)主碼:在若干個(gè)候選碼中指定作為碼的屬性(或?qū)傩越M合)稱為該關(guān)系的主碼(或主關(guān)鍵字)。例如,學(xué)號(hào)可以作為“學(xué)生信息”關(guān)系的主碼。441.4.1關(guān)系模型(6)候選碼:如果在一個(gè)關(guān)系中,存在1.4.1關(guān)系模型(8)全碼:如果一個(gè)關(guān)系模型的所有屬性一起構(gòu)成該關(guān)系的碼,則稱為全碼。(9)主屬性:包含在候選碼中的屬性。如學(xué)號(hào)。(10)非主屬性:不包含在任何候選碼中的屬性稱為非碼屬性或非主屬性。如性別和年齡。](11)域:屬性的取值范圍。如,性別域:(男、女),年齡域:大于0的整數(shù)。(12)分量:元組中的一個(gè)屬性值。如“李明”。451.4.1關(guān)系模型(8)全碼:如果一個(gè)關(guān)系模型的所有1.4.1關(guān)系模型(13)關(guān)系模式:對(duì)關(guān)系的描述。一般表示為:關(guān)系名(屬性1,屬性2,…,屬性n)例如,“學(xué)生信息”表表示為:學(xué)生信息(學(xué)號(hào),姓名,性別,年齡)461.4.1關(guān)系模型(13)關(guān)系模式:對(duì)關(guān)系的描述。一般1.4.1關(guān)系模型在關(guān)系模型中,實(shí)體和實(shí)體之間的聯(lián)系都是用關(guān)系來(lái)表示的,例如,學(xué)生、課程和選修關(guān)系可以表示為:學(xué)生信息(學(xué)號(hào),姓名,性別,年齡)課程(課程號(hào),課程名,學(xué)分)選修(學(xué)號(hào),課程號(hào),成績(jī))m學(xué)生選修課程n471.4.1關(guān)系模型在關(guān)系模型中,實(shí)體和實(shí)體之間1.4.1關(guān)系模型2.關(guān)系操作關(guān)系操作主要包括:查詢插入修改刪除數(shù)據(jù)特點(diǎn):集合操作操作對(duì)象和操作結(jié)果都是關(guān)系,即元組的集合。481.4.1關(guān)系模型2.關(guān)系操作481.4.1關(guān)系模型3.關(guān)系的完整性約束主要包括三類:實(shí)體完整性參照完整性用戶定義的完整性。其中,實(shí)體完整性和參照完整性是關(guān)系模型必須滿足的完整性約束條件,用戶定義的完整性是指針對(duì)具體應(yīng)用需要自行定義的約束條件。491.4.1關(guān)系模型3.關(guān)系的完整性約束491.4.1關(guān)系模型(1)實(shí)體完整性現(xiàn)實(shí)世界中的實(shí)體是可區(qū)分的,即它們具有某種唯一性標(biāo)識(shí)。相應(yīng)地,關(guān)系模型中以主碼作為唯一性標(biāo)識(shí)。主碼中的屬性即主屬性不能取空值。所謂空值就是“不知道”或“無(wú)意義”的值。如果主屬性取空值,就說(shuō)明存在某個(gè)不可標(biāo)識(shí)的實(shí)體,即存在不可區(qū)分的實(shí)體,這與現(xiàn)實(shí)世界的應(yīng)用環(huán)境相矛盾,因此這個(gè)實(shí)體一定不是一個(gè)完整的實(shí)體。這就是實(shí)體的完整性規(guī)則。實(shí)體完整性定義:若屬性A是基本關(guān)系R的主屬性,則屬性A不能取空值。501.4.1關(guān)系模型(1)實(shí)體完整性501.4.1關(guān)系模型(2)參照完整性在關(guān)系模型中,實(shí)體及實(shí)體間的聯(lián)系都是用關(guān)系來(lái)描述的,這樣就需要在關(guān)系與關(guān)系之間通過(guò)某些屬性建立起它們之間的聯(lián)系。例如,對(duì)于以下三個(gè)關(guān)系模式:學(xué)生信息(學(xué)號(hào),姓名,性別,年齡)主碼:學(xué)號(hào)課程(課程號(hào),課程名,學(xué)分)主碼:課程號(hào)選修(學(xué)號(hào),課程號(hào),成績(jī))主碼(學(xué)號(hào),課程號(hào))選修關(guān)系的學(xué)號(hào)必須在學(xué)生信息關(guān)系中存在的學(xué)號(hào),而選修關(guān)系的課程號(hào)也必須是一個(gè)在課程關(guān)系中存在的課程號(hào)。511.4.1關(guān)系模型(2)參照完整性例如,對(duì)于以下三個(gè)關(guān)1.4.1關(guān)系模型

參照完整性定義:設(shè)F是基本關(guān)系R的一個(gè)或一組屬性,但不是關(guān)系R的碼,如果F與基本關(guān)系S的主碼Ks相對(duì)應(yīng),則稱F是基本關(guān)系R的外碼,并稱基本關(guān)系R為參照關(guān)系,基本關(guān)系S為被參照關(guān)系。關(guān)系R和S不一定是不同的關(guān)系。521.4.1關(guān)系模型參照完整性定義:設(shè)F是基本關(guān)系1.4.1關(guān)系模型例如,設(shè)有以下兩個(gè)關(guān)系模式:職工(職工編號(hào),姓名,性別,部門編號(hào))部門(部門編號(hào),名稱,地址,簡(jiǎn)介)在“職工”關(guān)系中,主碼為職工編號(hào),在“部門”關(guān)系中,主碼為部門編號(hào),所以“職工”關(guān)系中的部門編號(hào)是該關(guān)系的外碼?!奥毠ぁ标P(guān)系為參照關(guān)系;“部門”關(guān)系為被參照關(guān)系。531.4.1關(guān)系模型例如,設(shè)有以下兩個(gè)關(guān)系模式:51.4.1關(guān)系模型參照完整性規(guī)則:若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼,它與基本關(guān)系S的主碼Ks相對(duì)應(yīng),則對(duì)于R中每個(gè)元組在F上的值必須為:空值(F的每個(gè)屬性值均為空值);等于S中某個(gè)元組的主碼值。參照完整性規(guī)則就是定義外碼與主碼之間的引用規(guī)則。541.4.1關(guān)系模型參照完整性規(guī)則:若屬性(或?qū)?.4.1關(guān)系模型(3)用戶定義的完整性針對(duì)某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語(yǔ)義要求,對(duì)關(guān)系數(shù)據(jù)庫(kù)中的數(shù)據(jù)定義的約束條件。例如:對(duì)于關(guān)系模式:學(xué)生信息(學(xué)號(hào),姓名,性別,年齡)可以定義:性別字段的值只能為“男”和“女”年齡字段的值只能為大于0的整數(shù)551.4.1關(guān)系模型(3)用戶定義的完整性551.4.1關(guān)系模型4.對(duì)關(guān)系的限制(1)表中的每一個(gè)數(shù)據(jù)項(xiàng)必須是單值的,每一個(gè)屬性必須是不可再分的基本數(shù)據(jù)項(xiàng)。例如,下表就是一個(gè)不滿足該要求的表。職工編號(hào)姓名工資基本工資職務(wù)工資工齡工資001趙軍2000500500002劉娜1800400300003李東2300700800…………………………561.4.1關(guān)系模型4.對(duì)關(guān)系的限制職工編號(hào)姓名工資基1.4.1關(guān)系模型(2)每一列中的數(shù)據(jù)項(xiàng)具有相同的數(shù)據(jù)類型,來(lái)自同一個(gè)域。例如,姓名都是字符類型,成績(jī)都是整數(shù)類型。(3)每一列的名稱在一個(gè)表中是唯一的。(4)列次序可以是任意的。(5)表中的任意兩行(即元組)不能相同。(6)行次序可以是任意的。571.4.1關(guān)系模型(2)每一列中的數(shù)據(jù)項(xiàng)具有相同的數(shù)據(jù)1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論要把一組數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)中,如何為這些數(shù)據(jù)設(shè)計(jì)一個(gè)合適的邏輯結(jié)構(gòu)呢?如在關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)中,針對(duì)一個(gè)具體問(wèn)題,應(yīng)該構(gòu)造幾個(gè)關(guān)系?每個(gè)關(guān)系由哪些屬性組成?使數(shù)據(jù)庫(kù)系統(tǒng)無(wú)論是在數(shù)據(jù)存儲(chǔ)方面,還是在數(shù)據(jù)操縱方面都有較好的性能。這就是關(guān)系數(shù)據(jù)庫(kù)規(guī)范化理論要研究的主要問(wèn)題。E-R模型的方法討論了實(shí)體與實(shí)體之間的數(shù)據(jù)聯(lián)系,而關(guān)系規(guī)范化理論主要討論實(shí)體內(nèi)部屬性與屬性之間的數(shù)據(jù)的聯(lián)系,其目標(biāo)是要設(shè)計(jì)一個(gè)“好”的關(guān)系數(shù)據(jù)庫(kù)模型。581.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論要把一組數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論1.問(wèn)題的提出關(guān)系:學(xué)生(學(xué)號(hào),姓名,性別,課程號(hào),課程名稱,成績(jī))學(xué)號(hào)姓名性別課程號(hào)課程名稱成績(jī)0601001張軍男001數(shù)據(jù)庫(kù)應(yīng)用780601002李輝男002程序設(shè)計(jì)890601003趙心女003管理信息系統(tǒng)850601004林梅女004數(shù)據(jù)結(jié)構(gòu)790601004林梅女001數(shù)據(jù)庫(kù)應(yīng)用900601004林梅女002程序設(shè)計(jì)78591.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論1.問(wèn)題的提出學(xué)號(hào)姓名1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論“學(xué)生”關(guān)系存在以下問(wèn)題:(1)數(shù)據(jù)冗余所謂數(shù)據(jù)冗余就是數(shù)據(jù)的重復(fù)出現(xiàn)。當(dāng)一個(gè)學(xué)生選修多門課程時(shí),學(xué)生信息重復(fù)出現(xiàn),導(dǎo)致了數(shù)據(jù)冗余的現(xiàn)象。例如,以上關(guān)于“林梅”的信息就出現(xiàn)了三次;同樣,一門課程有多個(gè)學(xué)生選修,也導(dǎo)致了該課程信息的冗余。例如,“數(shù)據(jù)庫(kù)應(yīng)用”課程被“林梅”和“張軍”選修了,因此,其課程名稱出現(xiàn)了兩次。顯然,數(shù)據(jù)冗余會(huì)導(dǎo)致數(shù)據(jù)庫(kù)存儲(chǔ)性能的下降,同時(shí)還會(huì)帶來(lái)數(shù)據(jù)的不一致性問(wèn)題。601.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論“學(xué)生”關(guān)系存在以下問(wèn)題1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(2)不一致性由于存在著數(shù)據(jù)冗余,因此,如果某個(gè)數(shù)據(jù)需要修改,則可能會(huì)因?yàn)槠涠嗵幋嬖诙鴮?dǎo)致在修改時(shí)不能全部修改過(guò)來(lái),產(chǎn)生數(shù)據(jù)的不一致。例如,假設(shè)有40名學(xué)生選修了“數(shù)據(jù)庫(kù)應(yīng)用”這門課,則在關(guān)系表中就會(huì)有40條記錄包含有課程名稱“數(shù)據(jù)庫(kù)應(yīng)用”,如果該課程名稱需要改成“數(shù)據(jù)庫(kù)原理及應(yīng)用”,則可能會(huì)只修改了其中的一些記錄而其他記錄沒(méi)有修改。這就是數(shù)據(jù)的不一致,也叫更新異常。611.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(2)不一致性611.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(3)插入異常

如果新生剛剛?cè)胄?,還沒(méi)有選修課程,則學(xué)生信息就無(wú)法插入到表中,因?yàn)檎n程號(hào)為空,而主碼為(學(xué)號(hào),課程號(hào)),根據(jù)關(guān)系模型的實(shí)體完整性規(guī)則,主碼不能為空或部分為空,因此無(wú)法插入新生數(shù)據(jù),這就是插入異常。又如,學(xué)校計(jì)劃下學(xué)期開(kāi)一門新課“計(jì)算機(jī)組成原理”,該課程信息也不能馬上添加到表中,因?yàn)檫€沒(méi)有學(xué)生選修該課程,無(wú)法知道學(xué)生的信息。簡(jiǎn)單來(lái)說(shuō),插入異常就是該插入的數(shù)據(jù)不能正常插入。621.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(3)插入異常621.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(4)刪除異常

當(dāng)學(xué)生畢業(yè)時(shí),需要?jiǎng)h除相關(guān)的學(xué)生記錄,于是就會(huì)刪除對(duì)應(yīng)的課程號(hào)、課程名信息。這就是刪除異常。例如,在“學(xué)生”關(guān)系表中要?jiǎng)h除學(xué)生記錄(060103,趙心,女,003,管理信息系統(tǒng),85),則會(huì)丟失課程號(hào)為“003”,課程名為“管理信息系統(tǒng)”的課程信息。簡(jiǎn)單來(lái)說(shuō),刪除異常就是不該刪除的數(shù)據(jù)被異常地刪除了。631.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(4)刪除異常631.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論

為了克服以上問(wèn)題,可以將“學(xué)生”關(guān)系分解為:學(xué)生基本信息(學(xué)號(hào),姓名,性別)課程(課程號(hào),課程名稱)選修(學(xué)號(hào),課程號(hào),成績(jī))分解后的關(guān)系在一定程度上解決了數(shù)據(jù)冗余解決了插入異常問(wèn)題解決了刪除異常的問(wèn)題641.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論為了克服以上問(wèn)題1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論為什么對(duì)“學(xué)生”關(guān)系進(jìn)行以上分解之后,可以消除異常呢?這是因?yàn)椤皩W(xué)生”關(guān)系中的某些屬性之間存在數(shù)據(jù)依賴,這種數(shù)據(jù)依賴會(huì)造成數(shù)據(jù)冗余、插入異常、刪除異常等問(wèn)題。

數(shù)據(jù)依賴是對(duì)屬性間數(shù)據(jù)的相互關(guān)系的描述。651.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論為什么對(duì)“學(xué)生”1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論2.函數(shù)依賴函數(shù)依賴是數(shù)據(jù)依賴的一種描述形式。定義1:設(shè)R(U)是屬性集U上的關(guān)系模式。X,Y是U的子集。如果對(duì)于R(U)的任意一個(gè)可能的關(guān)系r,r中不可能存在兩個(gè)元組在X上的屬性值相等,而在Y上的屬性值不等,則稱“X函數(shù)確定Y”或“Y函數(shù)依賴于X”,記作X→Y。簡(jiǎn)單地說(shuō),如果屬性X的值決定屬性Y的值(如果知道X的值就可以獲得Y的值),則屬性Y函數(shù)依賴于屬性X。若X→Y,并且Y→X,則記為X←→Y。若Y不函數(shù)依賴于X,則記為X→Y661.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論2.函數(shù)依賴661.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論例如:1)設(shè)有關(guān)系模式:商品(商品名稱,價(jià)格)如果知道商品名稱,就可以知道該商品的價(jià)格,也就是,不存在商品名稱相同,而價(jià)格不同的記錄,則可以說(shuō):商品名稱→價(jià)格。2)設(shè)有關(guān)系模式:學(xué)生(學(xué)號(hào),姓名,年齡,性別,專業(yè))學(xué)生關(guān)系中有唯一的標(biāo)識(shí)號(hào)“學(xué)號(hào)”,每個(gè)學(xué)生有且只有一個(gè)專業(yè),則學(xué)號(hào)決定專業(yè)的值,因此:學(xué)號(hào)→專業(yè)。3)對(duì)于選修關(guān)系:選修(學(xué)號(hào),課程號(hào),成績(jī))可以看出:(學(xué)號(hào),課程號(hào))→成績(jī)。671.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論例如:671.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論需要注意的是,函數(shù)依賴是語(yǔ)義范疇的概念。只能根據(jù)數(shù)據(jù)的語(yǔ)義來(lái)確定函數(shù)依賴。例如“姓名→年齡”這個(gè)函數(shù)依賴只有在不允許有同名人的條件下才成立。681.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論需要注意的是,1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論

定義2:在關(guān)系模式R(U)中,對(duì)于U的子集X和Y,如果X→Y,但Y?X,則稱X→Y是非平凡的函數(shù)依賴。若X→Y,但Y

X,則稱X→Y是平凡的函數(shù)依賴。例如,對(duì)于關(guān)系:選修(學(xué)號(hào),課程號(hào),成績(jī))存在非平凡函數(shù)依賴:(學(xué)號(hào),課程號(hào))→成績(jī)存在平凡函數(shù)依賴:(學(xué)號(hào),課程號(hào))→學(xué)號(hào);(學(xué)號(hào),課程號(hào))→課程號(hào)若不特別聲明,一般總是討論非平凡的函數(shù)依賴691.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論定義2:在1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論

定義3:在關(guān)系模式R(U)中,如果X→Y,并且對(duì)于X的任何一個(gè)真子集X’,都有X’→Y,則稱Y完全函數(shù)依賴于X,記作X→Y。若X→Y,但Y不完全函數(shù)依賴于X,則稱Y部分函數(shù)依賴于X,記作X→Y。例如,對(duì)于關(guān)系:選修(學(xué)號(hào),課程號(hào),成績(jī))由于:學(xué)號(hào)→成績(jī),課程號(hào)→成績(jī)而:(學(xué)號(hào),課程號(hào))→成績(jī)因此:(學(xué)號(hào),課程號(hào))→成績(jī)fpf701.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論定義3:在關(guān)系1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論

又如,對(duì)于關(guān)系:學(xué)生(學(xué)號(hào),姓名,性別,課程號(hào),課程名稱,成績(jī))由于有:(學(xué)號(hào),課程號(hào))→姓名,同時(shí)有:學(xué)號(hào)→姓名,因此存在部分函數(shù)依賴:(學(xué)號(hào),課程號(hào))→姓名fp711.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論又如,對(duì)于關(guān)系:1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論

定義4:在關(guān)系模式R(U)中,如果X→Y,Y→Z,且Y?X,Y→X,則稱Z傳遞函數(shù)依賴于X。注:如果Y→X,即X←→Y,則Z直接函數(shù)依賴于X例如,設(shè)有關(guān)系模式:學(xué)生信息(學(xué)號(hào),姓名,所在系,系主任)經(jīng)分析有:學(xué)號(hào)→所在系,所在系→系主任,因此:“系主任”傳遞函數(shù)依賴于“學(xué)號(hào)”。p721.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論定義4:在關(guān)系模1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論3.范式和規(guī)范化

規(guī)范化理論用于改造關(guān)系模式,通過(guò)分解關(guān)系模式來(lái)消除其中不合適的數(shù)據(jù)依賴,以解決數(shù)據(jù)冗余、插入異常、刪除異常等問(wèn)題。所謂規(guī)范化,就是用形式更為簡(jiǎn)潔、結(jié)構(gòu)更加規(guī)范的關(guān)系模式取代原有關(guān)系的過(guò)程。731.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論3.范式和規(guī)范化731.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論

要設(shè)計(jì)一個(gè)好的關(guān)系,必須使關(guān)系滿足一定的約束條件,這種約束條件已經(jīng)形成規(guī)范,分成幾個(gè)等級(jí),一級(jí)比一級(jí)要求更嚴(yán)格。滿足最低一級(jí)要求的關(guān)系稱為屬于第一范式(1NF),在此基礎(chǔ)上如果進(jìn)一步滿足某種約束條件,達(dá)到第二范式標(biāo)準(zhǔn),則稱該關(guān)系屬于第二范式(2NF),等等,直到第五范式。一個(gè)較低的范式,可以通過(guò)關(guān)系的無(wú)損分解轉(zhuǎn)換為若干個(gè)較高級(jí)范式的關(guān)系,這一過(guò)程叫做關(guān)系的規(guī)范化。741.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論要設(shè)計(jì)一個(gè)好的關(guān)1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(1)第一范式(1NF)定義:如果一個(gè)關(guān)系模式R的所有屬性都是不可分的基本數(shù)據(jù)項(xiàng),則R屬于1NF。第一范式是對(duì)關(guān)系模式的最起碼的要求。不滿足第一范式的數(shù)據(jù)庫(kù)模式不能稱為關(guān)系數(shù)據(jù)庫(kù)。751.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(1)第一范式(1NF1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論例如,以下“學(xué)生”關(guān)系滿足第一范式。學(xué)號(hào)姓名性別課程號(hào)課程名稱成績(jī)0601001張軍男001數(shù)據(jù)庫(kù)應(yīng)用780601002李輝男002程序設(shè)計(jì)890601003趙心女003管理信息系統(tǒng)850601004林梅女004數(shù)據(jù)結(jié)構(gòu)790601004林梅女001數(shù)據(jù)庫(kù)應(yīng)用900601004林梅女002程序設(shè)計(jì)78761.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論例如,以下“學(xué)生”關(guān)系滿1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論以下“工資”表具有組合數(shù)據(jù)項(xiàng),不屬于第一范式。職工編號(hào)姓名工資基本工資職務(wù)工資工齡工資001趙軍2000500500002劉娜1800400300003李東2300700800…………………………771.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論以下“工資”表具有組合數(shù)1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論將“工資”表規(guī)范化為第一范式:職工編號(hào)姓名基本工資職務(wù)工資工齡工資001趙軍2000500500002劉娜1800400300003李東2300700800…………………………滿足第一范式的關(guān)系模式不一定就是一個(gè)好的關(guān)系模式。例如,對(duì)于前面的“學(xué)生”關(guān)系,已經(jīng)分析過(guò),它存在數(shù)據(jù)冗余、插入異常、刪除異常等問(wèn)題。781.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論將“工資”表規(guī)范化為第一1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(2)第二范式(2NF)

定義:若關(guān)系模式R是1NF,并且每一個(gè)非主屬性都完全函數(shù)依賴于R的碼,則R屬于2NF。例如,對(duì)于學(xué)生關(guān)系:學(xué)生(學(xué)號(hào),姓名,性別,課程號(hào),課程名稱,成績(jī))碼:(學(xué)號(hào),課程號(hào))因此:學(xué)號(hào)、課程號(hào)是主屬性,性別、課程名稱、成績(jī)是非主屬性。存在部分函數(shù)依賴:學(xué)號(hào)→姓名學(xué)號(hào)→性別課程號(hào)→課程名稱存在非主屬性對(duì)碼的部分函數(shù)依賴,因此不是2NF791.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(2)第二范式(2NF1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論改進(jìn)方法:對(duì)該關(guān)系進(jìn)行分解,生成若干關(guān)系,以消除部分函數(shù)依賴。分解為以下三個(gè)關(guān)系:學(xué)生基本信息(學(xué)號(hào),姓名,性別)課程(課程號(hào),課程名稱)選修(學(xué)號(hào),課程號(hào),成績(jī))可以看出,在這三個(gè)關(guān)系中不存在部分函數(shù)依賴,因此問(wèn)題得到了解決。實(shí)際上,這里就是把描述不同主題的內(nèi)容分別用不同的關(guān)系來(lái)表示。801.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論改進(jìn)方法:801.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(3)第三范式(3NF)

定義:如果關(guān)系模式R是第二范式,且每個(gè)非主屬性都非傳遞函數(shù)依賴于主碼,則R屬于3NF。也可以說(shuō),如果關(guān)系R的每一個(gè)非主屬性既不部分函數(shù)依賴于主碼,也不傳遞函數(shù)依賴于主碼,則R屬于3NF。811.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論(3)第三范式(3NF1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論例如,關(guān)系Housing是學(xué)生住宿收費(fèi)表,SID為學(xué)生編號(hào),Sname為學(xué)生姓名,Building為樓的編號(hào),F(xiàn)ee為每季度需支付的費(fèi)用。假設(shè)一個(gè)學(xué)生只住在一個(gè)大樓里,一個(gè)大樓只有一種收費(fèi)標(biāo)準(zhǔn)。SIDSnameBuildingFee10TomA110011JerryA110012KateB120013TonyB120014JohnC130015MaryD1400821.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論例如,關(guān)系Housing1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論主碼:SID存在函數(shù)依賴:SID→BuildingBuilding→Fee即存在非主屬性Fee對(duì)碼SID的傳遞函數(shù)依賴,因此關(guān)系Housing不是第三范式。831.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論主碼:SID81.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論

該關(guān)系存在插入異常、刪除異常等問(wèn)題。例如,如果SID為15的學(xué)生退學(xué)了,則不僅刪除了該學(xué)生的信息,同時(shí)刪除了D樓的收費(fèi)信息,出現(xiàn)了刪除異常。如果新建了一個(gè)大樓,還沒(méi)有學(xué)生入住,則該新樓的信息也無(wú)法插入到表中,也就是出現(xiàn)了插入異常。同樣,如果有400名學(xué)生住在同一個(gè)樓里,則該樓的信息就要重復(fù)400次,因此也存在數(shù)據(jù)冗余問(wèn)題。841.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論該關(guān)系存在插入異1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論改進(jìn)方法:將關(guān)系Housing分解為兩個(gè)關(guān)系。SIDSnameBuilding10TomA11JerryA12KateB13TonyB14JohnC15MaryD“Stu-Housing”關(guān)系:851.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論改進(jìn)方法:將關(guān)系1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論“Housing-Fee”關(guān)系:BuildingFeeA1100B1200C1300D1400分解后的關(guān)系解決了插入異常、刪除異常、數(shù)據(jù)冗余的問(wèn)題861.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論“Housing-Fee1.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論規(guī)范化的本質(zhì)是把表示不同主題的信息分解到不同的關(guān)系中,如果某個(gè)關(guān)系包含有兩個(gè)或兩個(gè)以上的主題,就應(yīng)該將它分解為多個(gè)關(guān)系,使每個(gè)關(guān)系只包含一個(gè)主題。在分解關(guān)系之后,需要注意建立起關(guān)系之間的關(guān)聯(lián)約束(參照完整性約束)。關(guān)系變得更加復(fù)雜,對(duì)關(guān)系的使用也會(huì)變得復(fù)雜,因此并不是分解得越細(xì)越好。一般來(lái)說(shuō),用戶的目標(biāo)是第三范式(3NF)數(shù)據(jù)庫(kù),因?yàn)樵诖蠖鄶?shù)情況下,這是進(jìn)行規(guī)范化功能與易用程度的最好平衡點(diǎn)。在理論上和一些實(shí)際使用的數(shù)據(jù)庫(kù)中,有比3NF更高的等級(jí)。871.4.2關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論規(guī)范化的本質(zhì)是把表示不同1.5數(shù)據(jù)庫(kù)系統(tǒng)的體系結(jié)構(gòu)數(shù)據(jù)庫(kù)系統(tǒng)的體系結(jié)構(gòu)是數(shù)據(jù)庫(kù)系統(tǒng)的一個(gè)總的框架。盡管實(shí)際的數(shù)據(jù)庫(kù)系統(tǒng)軟件產(chǎn)品多種多樣,它們支持的數(shù)據(jù)模型也不一定不同,使用不同的數(shù)據(jù)庫(kù)語(yǔ)言,建立在不同的操作系統(tǒng)之上,數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)也各不相同,但是絕大多數(shù)數(shù)據(jù)庫(kù)系統(tǒng)在總的體系結(jié)構(gòu)上都具有三級(jí)模式的結(jié)構(gòu)特征。881.5數(shù)據(jù)庫(kù)系統(tǒng)的體系結(jié)構(gòu)數(shù)據(jù)庫(kù)系統(tǒng)的體系結(jié)構(gòu)是數(shù)據(jù)庫(kù)1.5.1數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)三級(jí)模式結(jié)構(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ù)庫(kù)模式/內(nèi)模式映像891.5.1數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)三級(jí)模式結(jié)構(gòu):外模式1.5.1數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)三級(jí)模式是對(duì)數(shù)據(jù)的三個(gè)抽象級(jí)別,它把數(shù)據(jù)的具體組織留給DBMS管理,使用戶能邏輯地抽象地處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)在計(jì)算機(jī)中的表示和存儲(chǔ)。為了實(shí)現(xiàn)這三個(gè)抽象層次的聯(lián)系和轉(zhuǎn)換,數(shù)據(jù)庫(kù)系統(tǒng)在這三級(jí)模式中提供了兩層映像:外模式/模式映像;模式/內(nèi)模式映像。901.5.1數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)三級(jí)模式是對(duì)數(shù)據(jù)的1.5.1數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)1.模式(邏輯模式)是數(shù)據(jù)庫(kù)中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特性的描述,是所有用戶的公共數(shù)據(jù)視圖。以某一種數(shù)據(jù)模型為基礎(chǔ)。不僅要定義數(shù)據(jù)的邏輯結(jié)構(gòu),而且要定義與數(shù)據(jù)有關(guān)的安全性、完整性要求;不僅要定義記錄內(nèi)部的結(jié)構(gòu),而且要定義數(shù)據(jù)以及不同記錄之間的聯(lián)系。模式既不涉及數(shù)據(jù)的物理存儲(chǔ)細(xì)節(jié)和硬件環(huán)境,也與具體的應(yīng)用程序和開(kāi)發(fā)工具無(wú)關(guān)。DBMS提供模式數(shù)據(jù)描述語(yǔ)言描述模式。911.5.1數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)1.模式(邏輯模式)1.5.1數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)2.外模式(子模式或用戶模式)是數(shù)據(jù)庫(kù)用戶看到的數(shù)據(jù)視圖,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示。通常是模式的子集,由于不同的用戶其需求不同,看待數(shù)據(jù)的方式不同,對(duì)數(shù)據(jù)的要求不同,使用的程序設(shè)計(jì)語(yǔ)言也可以不同,因此不同用戶的外模式描述是不同的。即使對(duì)模式中同一數(shù)據(jù),在外模式中的結(jié)構(gòu)、類型、長(zhǎng)度、保密級(jí)別等都可以不同。DBMS提供外模式數(shù)據(jù)描述語(yǔ)言來(lái)描述外模式。921.5.1數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)2.外模式(子模式或1.5.1數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)3.內(nèi)模式是全體數(shù)據(jù)庫(kù)數(shù)據(jù)的內(nèi)部表示或者低層描述,用來(lái)定義數(shù)據(jù)的存儲(chǔ)方式和物理結(jié)構(gòu)。通常用內(nèi)模式數(shù)據(jù)描述語(yǔ)言來(lái)描述和定義。931.5.1數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)3.內(nèi)模式931.5.2數(shù)據(jù)庫(kù)的二級(jí)映像與數(shù)據(jù)的獨(dú)立性1.外模式/模式映像定義某一個(gè)外模式和模式之間的對(duì)應(yīng)關(guān)系。當(dāng)模式改變時(shí),外模式/模式的映像要作相應(yīng)的改變(由DBA負(fù)責(zé))以保證外模式保持不變。對(duì)應(yīng)于同一個(gè)模式,可以有任意多個(gè)外模式。2.模式/內(nèi)模式映像定義數(shù)據(jù)的邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu)之間的對(duì)應(yīng)關(guān)系,說(shuō)明邏輯記錄和字段在內(nèi)部是如何表示的。這樣,當(dāng)數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)改變時(shí),可相應(yīng)修改模式/內(nèi)模式的映像,從而使模式保持不變。941.5.2數(shù)據(jù)庫(kù)的二級(jí)映像與數(shù)據(jù)的獨(dú)立性1.外模式/模1.5.2數(shù)據(jù)庫(kù)的二級(jí)映像與數(shù)據(jù)的獨(dú)立性模式(全局邏輯結(jié)構(gòu))應(yīng)該首先定義,因?yàn)樗?dú)立于數(shù)據(jù)庫(kù)的其他所有結(jié)構(gòu)描述。內(nèi)模式(存儲(chǔ)模式)依賴于全局邏輯結(jié)構(gòu),獨(dú)立于任何一個(gè)外模式(用戶的局部邏輯結(jié)構(gòu))。外模式獨(dú)立于存儲(chǔ)模式和存儲(chǔ)設(shè)備,它必須在數(shù)據(jù)庫(kù)的全局邏輯結(jié)構(gòu)描述(模式)的基礎(chǔ)上定義。二級(jí)映像功能使數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)具有較高的邏輯獨(dú)立性和物理獨(dú)立性。說(shuō)明:951.5.2數(shù)據(jù)庫(kù)的二級(jí)映像與數(shù)據(jù)的獨(dú)立性模式(全局邏輯結(jié)1.5.2數(shù)據(jù)庫(kù)的二級(jí)映像與數(shù)據(jù)的獨(dú)立性一個(gè)子模式一旦被定義,則除非模式結(jié)構(gòu)的變化使得子模式中的某些數(shù)據(jù)無(wú)法再?gòu)臄?shù)據(jù)庫(kù)中導(dǎo)出,否則不必改變子模式。通過(guò)調(diào)整外模式/模式映像可實(shí)現(xiàn)這一點(diǎn)。這就是子模式對(duì)于模式的相對(duì)獨(dú)立性,即邏輯數(shù)據(jù)獨(dú)立性。應(yīng)用程序是在子模式的數(shù)據(jù)結(jié)構(gòu)上編制的,因此,它必然依賴于特定的子模式。但是,在一個(gè)完善的數(shù)據(jù)庫(kù)系統(tǒng)中,它是獨(dú)立于存儲(chǔ)設(shè)備和存儲(chǔ)模式的,并且只要數(shù)據(jù)庫(kù)全局邏輯模式的變化不導(dǎo)致其對(duì)應(yīng)的子模式的改變,則應(yīng)用程序也是獨(dú)立于數(shù)據(jù)庫(kù)模式的。961.5.2數(shù)據(jù)庫(kù)的二級(jí)映像與數(shù)據(jù)的獨(dú)立性一個(gè)子模式一旦被1.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)包括:數(shù)據(jù)庫(kù)的設(shè)計(jì)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)是指設(shè)計(jì)數(shù)據(jù)庫(kù)的結(jié)構(gòu)特性,即為特定的應(yīng)用環(huán)境構(gòu)造最優(yōu)的數(shù)據(jù)模型;數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)設(shè)計(jì)是指設(shè)計(jì)出滿足各種用戶對(duì)數(shù)據(jù)庫(kù)應(yīng)用需求的應(yīng)用程序。用戶通過(guò)應(yīng)用程序來(lái)訪問(wèn)和操作數(shù)據(jù)庫(kù)。971.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)包括:971.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介

將數(shù)據(jù)庫(kù)設(shè)計(jì)分為6個(gè)階段:需求分析階段概念結(jié)構(gòu)設(shè)計(jì)階段邏輯結(jié)構(gòu)設(shè)計(jì)階段物理結(jié)構(gòu)設(shè)計(jì)階段數(shù)據(jù)庫(kù)實(shí)施階段數(shù)據(jù)庫(kù)運(yùn)行和維護(hù)階段以上步驟既是數(shù)據(jù)庫(kù)設(shè)計(jì)的過(guò)程,也包括數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的設(shè)計(jì)過(guò)程。在設(shè)計(jì)過(guò)程只有將這兩方面有機(jī)地結(jié)合起來(lái),互相參照、互為補(bǔ)充,才可以設(shè)計(jì)出性能良好的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)。981.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介將數(shù)據(jù)庫(kù)設(shè)計(jì)分為6個(gè)階段:1.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介1.需求分析階段任務(wù):準(zhǔn)確了解并分析用戶對(duì)系統(tǒng)的要求,確定所要開(kāi)發(fā)的應(yīng)用系統(tǒng)的目標(biāo),重點(diǎn)調(diào)查用戶的信息要求、處理要求、安全性與完整性要求結(jié)果:產(chǎn)生用戶和設(shè)計(jì)者都能接受的需求說(shuō)明書,做為下一步數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)的基礎(chǔ)。需求分析主要是考慮“做什么”,而不是考慮“怎么做”。需求分析做得是否充分、準(zhǔn)確,將決定以后各設(shè)計(jì)步驟能否順利進(jìn)行。如果需求分析做得不好,會(huì)影響整個(gè)系統(tǒng)的性能,甚至?xí)?dǎo)致整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的返工991.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介1.需求分析階段需求分1.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介

2.概念結(jié)構(gòu)設(shè)計(jì)階段

將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型的過(guò)程就是概念結(jié)構(gòu)設(shè)計(jì)。概念結(jié)構(gòu)是獨(dú)立于支持?jǐn)?shù)據(jù)庫(kù)的DBMS和使用的硬件環(huán)境的。人們提出了多種概念結(jié)構(gòu)設(shè)計(jì)的表達(dá)工具,其中最常用、最有名的是E-R模型。1001.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介2.概念結(jié)構(gòu)設(shè)計(jì)階段1001.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介

在概念結(jié)構(gòu)設(shè)計(jì)階段,首先要對(duì)需求分析階段收集到的數(shù)據(jù)進(jìn)行分類、組織,形成實(shí)體、實(shí)體的屬性,標(biāo)識(shí)實(shí)體的碼,確定實(shí)體之間的聯(lián)系類型(1:1,1:n,m:n),針對(duì)各個(gè)局部應(yīng)用設(shè)計(jì)局部視圖(如分E-R圖)。合并局部視圖,通過(guò)消除各局部視圖的屬性沖突、命名沖突、結(jié)構(gòu)沖突、數(shù)據(jù)冗余等,最終集成為一個(gè)全局視圖(如整體的E-R圖)。概念模型是數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的依據(jù),是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵。1011.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介在概念結(jié)構(gòu)設(shè)計(jì)階段,首先1.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介3.邏輯結(jié)構(gòu)設(shè)計(jì)階段任務(wù)是將概念結(jié)構(gòu)進(jìn)一步轉(zhuǎn)化為某一DBMS支持的數(shù)據(jù)模型。包括數(shù)據(jù)庫(kù)模式和外模式。首先需要將概念結(jié)構(gòu)轉(zhuǎn)化為一般的關(guān)系、網(wǎng)狀、層次模型;然后將轉(zhuǎn)化后的關(guān)系、網(wǎng)狀、層次模型向特定DBMS支持下的數(shù)據(jù)模型轉(zhuǎn)換,轉(zhuǎn)換的主要依據(jù)是所選用的DBMS的功能及限制,沒(méi)有通用規(guī)則。對(duì)于關(guān)系模型來(lái)說(shuō),這種轉(zhuǎn)換通常都比較簡(jiǎn)單;最后對(duì)數(shù)據(jù)模型進(jìn)行優(yōu)化。1021.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介3.邏輯結(jié)構(gòu)設(shè)計(jì)階段1021.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介

邏輯結(jié)構(gòu)設(shè)計(jì)階段可能還需要設(shè)計(jì)用戶子模式(外模式),即用戶可直接訪問(wèn)的數(shù)據(jù)模式。同一系統(tǒng)中,不同用戶可以有不同的外模式。定義用戶外模式時(shí)應(yīng)該更注重考慮用戶的習(xí)慣與方便,主要包括以下三個(gè)方面:(1)使用更符合用戶習(xí)慣的別名。(2)針對(duì)不同級(jí)別的用戶定義不同的外模式,以滿足系統(tǒng)對(duì)安全性的要求。(3)如果某些局部應(yīng)用中經(jīng)常要使用某些很復(fù)雜的查詢,為了方便用戶,可以將這些復(fù)雜查詢定義為外模式(視圖),以簡(jiǎn)化用戶對(duì)系統(tǒng)的使用。1031.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介邏輯結(jié)構(gòu)設(shè)計(jì)階段可能1.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介

4.物理結(jié)構(gòu)設(shè)計(jì)階段

用于為邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu),包括數(shù)據(jù)庫(kù)在物理設(shè)備上的存儲(chǔ)結(jié)構(gòu)和存取方法。由于不同的數(shù)據(jù)庫(kù)產(chǎn)品所提供的物理環(huán)境、存取方法和存儲(chǔ)結(jié)構(gòu)各不相同,供設(shè)計(jì)人員使用的設(shè)計(jì)變量、參數(shù)范圍也各不相同,所以物理結(jié)構(gòu)設(shè)計(jì)沒(méi)有通用的設(shè)計(jì)方法可以遵循。主要考慮問(wèn)題:物理數(shù)據(jù)庫(kù)結(jié)構(gòu)應(yīng)能滿足事務(wù)在數(shù)據(jù)庫(kù)上運(yùn)行時(shí)響應(yīng)時(shí)間少、存儲(chǔ)空間利用率高和事務(wù)吞吐率大的要求。1041.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介4.物理結(jié)構(gòu)設(shè)計(jì)階段1041.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介

5.數(shù)據(jù)庫(kù)實(shí)施階段

完成數(shù)據(jù)庫(kù)物理設(shè)計(jì)之后,設(shè)計(jì)人員就要用DBMS提供的數(shù)據(jù)定義語(yǔ)言和其他實(shí)用程序?qū)?shù)據(jù)庫(kù)邏輯設(shè)計(jì)和物理設(shè)計(jì)結(jié)果嚴(yán)格地描述出來(lái),成為DBMS可以接受的源代碼,再經(jīng)過(guò)調(diào)試產(chǎn)生目標(biāo)模式,然后就可以組織數(shù)據(jù)入庫(kù)了,這就是數(shù)據(jù)庫(kù)實(shí)施階段。1051.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介5.數(shù)據(jù)庫(kù)實(shí)施階段1051.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介(1)用DBMS提供的數(shù)據(jù)定義語(yǔ)言(DDL)描述數(shù)據(jù)庫(kù)結(jié)構(gòu)。(2)組織數(shù)據(jù)入庫(kù)。(3)編制與調(diào)試應(yīng)用程序。數(shù)據(jù)庫(kù)應(yīng)用程序的設(shè)計(jì)應(yīng)該與數(shù)據(jù)庫(kù)設(shè)計(jì)并行進(jìn)行。因此,在部分?jǐn)?shù)據(jù)錄入到數(shù)據(jù)庫(kù)中之后,就可以開(kāi)始對(duì)應(yīng)用程序進(jìn)行調(diào)試了。這時(shí)由于數(shù)據(jù)入庫(kù)尚未完成,可以先使用模擬數(shù)據(jù),模擬數(shù)據(jù)應(yīng)該具有一定的代表性,足夠測(cè)試系統(tǒng)的多數(shù)功能。應(yīng)用程序的設(shè)計(jì)、編碼和調(diào)試方法、步驟應(yīng)遵循軟件工程的規(guī)范。(4)數(shù)據(jù)庫(kù)試運(yùn)行:功能測(cè)試;性能測(cè)試1061.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介(1)用DBMS提供的數(shù)據(jù)定義1.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介6.數(shù)據(jù)庫(kù)運(yùn)行和維護(hù)階段數(shù)據(jù)庫(kù)試運(yùn)行結(jié)果符合設(shè)計(jì)目標(biāo)后,數(shù)據(jù)庫(kù)就可以投入正式運(yùn)行了。數(shù)據(jù)庫(kù)投入運(yùn)行標(biāo)志著開(kāi)發(fā)任務(wù)的基本完成和維護(hù)工作的開(kāi)始。由于應(yīng)用環(huán)境在不斷變化,數(shù)據(jù)庫(kù)運(yùn)行過(guò)程中物理存儲(chǔ)會(huì)不斷變化,因此,對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)進(jìn)行評(píng)價(jià)、調(diào)整、修改等維護(hù)工作是一個(gè)長(zhǎng)期的任務(wù),也是設(shè)計(jì)工作的繼續(xù)和提高。1071.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介6.數(shù)據(jù)庫(kù)運(yùn)行和維護(hù)階段1071.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介在數(shù)據(jù)庫(kù)運(yùn)行階段,對(duì)數(shù)據(jù)庫(kù)經(jīng)常性的維護(hù)工作主要是由DBA完成的。工作主要包括:(1)數(shù)據(jù)庫(kù)的轉(zhuǎn)儲(chǔ)和恢復(fù)。(2)數(shù)據(jù)庫(kù)的安全性、完整性控制:DBA需要應(yīng)用環(huán)境的變化修改原有的安全性控制和完整性約束。(3)數(shù)據(jù)庫(kù)性能的監(jiān)督、分析和改進(jìn)。(4)數(shù)據(jù)庫(kù)的重組織和重構(gòu)造。數(shù)據(jù)庫(kù)運(yùn)行一段時(shí)間后,由于記錄的不斷增、刪、改,會(huì)使數(shù)據(jù)庫(kù)的物理存儲(chǔ)變壞,從而降低數(shù)據(jù)庫(kù)存儲(chǔ)空間的利用率和數(shù)據(jù)的存取效率,使數(shù)據(jù)庫(kù)的性能下降,因此需要對(duì)數(shù)據(jù)庫(kù)進(jìn)行重新組織。1081.6數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介在數(shù)據(jù)庫(kù)運(yùn)行階段,對(duì)演講完畢,謝謝觀看!演講完畢,謝謝觀看!109第1章數(shù)據(jù)庫(kù)基礎(chǔ)數(shù)據(jù)庫(kù)系統(tǒng)概述1.1數(shù)據(jù)管理技術(shù)的發(fā)展1.2數(shù)據(jù)模型1.3關(guān)系數(shù)據(jù)庫(kù)1.4數(shù)據(jù)庫(kù)系統(tǒng)的體系結(jié)構(gòu)1.5數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)簡(jiǎn)介1.6110第1章數(shù)據(jù)庫(kù)基礎(chǔ)數(shù)據(jù)庫(kù)系統(tǒng)概述1.1數(shù)據(jù)管理技術(shù)的發(fā)展1隨著科學(xué)技術(shù)和社會(huì)經(jīng)濟(jì)的飛速發(fā)展,人們掌握的信息量急劇增加,要充分地開(kāi)發(fā)和利用這些信息資源,就必須有一種新技術(shù)能對(duì)大量的信息進(jìn)行識(shí)別、存儲(chǔ)、處理與傳播。隨著計(jì)算機(jī)軟硬件技術(shù)的發(fā)展,20世紀(jì)60年代末,數(shù)據(jù)庫(kù)技術(shù)應(yīng)運(yùn)而生,并從70年代起得到了迅速的發(fā)展和廣泛的應(yīng)用。數(shù)據(jù)庫(kù)技術(shù)主要研究如何科學(xué)地組織和存儲(chǔ)數(shù)據(jù),如何高效地獲取和處理數(shù)據(jù)。數(shù)據(jù)庫(kù)技術(shù)作為數(shù)據(jù)管理的最新技術(shù),目前已廣泛應(yīng)用于各個(gè)領(lǐng)域。對(duì)于一個(gè)國(guó)家來(lái)說(shuō),數(shù)據(jù)庫(kù)的建設(shè)規(guī)模、數(shù)據(jù)庫(kù)信息量的大小和使用頻度已經(jīng)成為衡量這個(gè)國(guó)家信息化程度的重要標(biāo)志。111隨著科學(xué)技術(shù)和社會(huì)經(jīng)濟(jì)的飛速發(fā)展,人們掌握的信息量1.1數(shù)據(jù)庫(kù)系統(tǒng)概述1.信息:信息是人腦對(duì)現(xiàn)實(shí)世界中的客觀事物以及事物之間聯(lián)系的抽象反映,它向我們提供了關(guān)于現(xiàn)實(shí)世界實(shí)際存在的事物及其聯(lián)系的有用知識(shí)。2.數(shù)據(jù):數(shù)據(jù)是人們用各種物理符號(hào),把信息按一定格式記載下來(lái)的有意義的符號(hào)組合。數(shù)據(jù)不僅僅是數(shù)字,還可以是文字、圖象、聲音等各種表現(xiàn)形式。數(shù)據(jù)經(jīng)數(shù)字化后可以存入計(jì)算機(jī)中,是數(shù)據(jù)庫(kù)中存儲(chǔ)的基本對(duì)象。數(shù)據(jù)和它的語(yǔ)義是不可分割的。1121.1數(shù)據(jù)庫(kù)系統(tǒng)概述1.信息:信息是人腦對(duì)現(xiàn)實(shí)世界中的客1.1數(shù)據(jù)庫(kù)系統(tǒng)概述數(shù)據(jù)的形式不能完全表達(dá)其內(nèi)容。例如:(李明,78)我們可以賦予它一定的語(yǔ)義,它表示李明的期末考試平均成績(jī)?yōu)?8分。如果不了解其語(yǔ)義,則無(wú)法對(duì)其進(jìn)行解釋,甚至解釋為李明的年齡為78。99:8179,7954舅舅:不要吃酒,吃酒誤事1×1=1一成不變10002=100×100×100千方百計(jì)7/8七上八下7÷2不三不四1131.1數(shù)據(jù)庫(kù)系統(tǒng)概述數(shù)據(jù)的形式不能完全表達(dá)其內(nèi)容。例如:41.1數(shù)據(jù)庫(kù)系統(tǒng)概述3.數(shù)據(jù)處理:指對(duì)各種形式的數(shù)據(jù)進(jìn)行收集、整理、加工、存儲(chǔ)和傳播的一系列活動(dòng)的總和。其目的之一是從大量的原始數(shù)據(jù)中提取出對(duì)人們有價(jià)值的信息,作為行動(dòng)和決策的依據(jù);目的之二是為了借助計(jì)算機(jī)科學(xué)地保存和管理大量的復(fù)雜的數(shù)據(jù),以便人們能方便地充分利用這些信息資源。4.數(shù)據(jù)庫(kù)(DB):以一定的方式保存在計(jì)算機(jī)存儲(chǔ)設(shè)備上的相互關(guān)聯(lián)的數(shù)據(jù)的集合。1141.1數(shù)據(jù)庫(kù)系統(tǒng)概述3.數(shù)據(jù)處理:指對(duì)各種形式的數(shù)據(jù)進(jìn)行1.1數(shù)據(jù)庫(kù)系統(tǒng)概述5.數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)

:用于幫助我們管理輸入到計(jì)算機(jī)中的大量數(shù)據(jù)。如用于創(chuàng)建數(shù)據(jù)庫(kù),向數(shù)據(jù)庫(kù)中存儲(chǔ)數(shù)據(jù),修改數(shù)據(jù)庫(kù)中的數(shù)據(jù),從數(shù)據(jù)庫(kù)中提取信息等。一個(gè)DBMS應(yīng)具備如下功能:(1)數(shù)據(jù)定義功能(2)數(shù)據(jù)操縱功能(3)數(shù)據(jù)查詢功能(4)數(shù)據(jù)控制功能(5)數(shù)據(jù)庫(kù)通信功能1151.1數(shù)據(jù)庫(kù)系統(tǒng)概述5.數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS):1.1數(shù)據(jù)庫(kù)系統(tǒng)概述6.數(shù)據(jù)庫(kù)管理員:數(shù)據(jù)庫(kù)的建立、使用和維護(hù)只靠DBMS是不夠的,還需要有專門的人員來(lái)完成,這些人員稱為數(shù)據(jù)庫(kù)管理員7.數(shù)據(jù)庫(kù)系統(tǒng)(DBS):在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫(kù)的系統(tǒng)。除了相關(guān)的硬件之外,數(shù)據(jù)庫(kù)系統(tǒng)還包括數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫(kù)管理員和用戶。1161.1數(shù)據(jù)庫(kù)系統(tǒng)概述6.數(shù)據(jù)庫(kù)管理員:數(shù)據(jù)庫(kù)的建立、使用1.2數(shù)據(jù)管理技術(shù)的發(fā)展什么是數(shù)據(jù)管理?對(duì)數(shù)據(jù)進(jìn)行分類、組織、編碼、存儲(chǔ)、檢索和維護(hù),是數(shù)據(jù)處理的中心問(wèn)題。數(shù)據(jù)管理技術(shù)的發(fā)展動(dòng)力應(yīng)用需求的推動(dòng)計(jì)算機(jī)硬件的發(fā)展計(jì)算機(jī)軟件的發(fā)展數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程人工管理階段(40年代中--50年代中)文件系統(tǒng)階段(50年代末--60年代中)數(shù)據(jù)庫(kù)系統(tǒng)階段(60年代末--現(xiàn)在)1171.2數(shù)據(jù)管理技術(shù)的發(fā)展什么是數(shù)據(jù)管理?81.2數(shù)據(jù)管理技術(shù)的發(fā)展1.人工管理階段在計(jì)算機(jī)發(fā)展的初級(jí)階段,計(jì)算機(jī)硬件本身還不具備象磁盤這樣的可直接存取的存儲(chǔ)設(shè)備,因此也無(wú)法實(shí)現(xiàn)對(duì)大量數(shù)據(jù)的保存,也沒(méi)有用來(lái)管理數(shù)據(jù)的相應(yīng)軟件,計(jì)算機(jī)主要用于科學(xué)計(jì)算。這個(gè)階段的數(shù)據(jù)管理是以人工管理的方式進(jìn)行的,人們還沒(méi)有形成一套數(shù)據(jù)管理的完整的概念。1181.2數(shù)據(jù)管理技術(shù)的發(fā)展1.人工管理階段91.2數(shù)據(jù)管理技術(shù)的發(fā)展人工管理階段的主要特點(diǎn):(1)數(shù)據(jù)不保存。計(jì)算機(jī)主要用于科學(xué)計(jì)算,計(jì)算時(shí)輸入數(shù)據(jù),用完就撤走數(shù)據(jù)。(2)還沒(méi)有文件的概念。數(shù)據(jù)由每個(gè)程序的程序員自行組織和安排。(3)數(shù)據(jù)不共享:每組數(shù)據(jù)和一個(gè)應(yīng)用程序相對(duì)應(yīng),因此可能導(dǎo)致大量的數(shù)據(jù)重復(fù)。(4)沒(méi)有形成完整的數(shù)據(jù)管理的概念,更沒(méi)有對(duì)數(shù)據(jù)進(jìn)行管理的軟件系統(tǒng)。每個(gè)程序都要包括數(shù)據(jù)存取方法、輸入/輸出方法和數(shù)據(jù)組織方法,程序直接面向存儲(chǔ)結(jié)構(gòu),因此存儲(chǔ)結(jié)構(gòu)的任何修改都將導(dǎo)致程序的修改。程序和數(shù)據(jù)不具有獨(dú)立性。1191.2數(shù)據(jù)管理技術(shù)的發(fā)展人工管理階段的主要特點(diǎn):101.2數(shù)據(jù)管理技術(shù)的發(fā)展人工管理階段的特點(diǎn)可以用下圖來(lái)描述:應(yīng)用程序1數(shù)據(jù)集1應(yīng)用程序2數(shù)據(jù)集2應(yīng)用程序n數(shù)據(jù)集n…………1201.2數(shù)據(jù)管理技術(shù)的發(fā)展人工管理階段的特點(diǎn)可以用下圖來(lái)描述1.2數(shù)據(jù)管理技術(shù)的發(fā)展2.文件系統(tǒng)階段隨著計(jì)算機(jī)軟硬件技術(shù)的發(fā)展,如直接存儲(chǔ)設(shè)備的產(chǎn)生,操作系統(tǒng)、高級(jí)語(yǔ)言及數(shù)據(jù)管理軟件的出現(xiàn),計(jì)算機(jī)不僅用于科學(xué)計(jì)算,也開(kāi)始大量用于信息管理。數(shù)據(jù)可以以文件的形式長(zhǎng)期獨(dú)立地保存在磁盤上,且可以由多個(gè)程序反復(fù)使用;操作系統(tǒng)及高級(jí)語(yǔ)言或數(shù)據(jù)管理軟件提供了對(duì)數(shù)據(jù)的存取和管理功能,這就是文件系統(tǒng)階段。1211.2數(shù)據(jù)管理技術(shù)的發(fā)展2.文件系統(tǒng)階段121.2數(shù)據(jù)管理技術(shù)的發(fā)展文件系統(tǒng)階段的主要特點(diǎn):(1)數(shù)據(jù)可以長(zhǎng)期保存在磁盤上,因此可以重復(fù)使用。數(shù)據(jù)不再屬于某個(gè)特定的程序,可以由多個(gè)程序反復(fù)使用。(2)數(shù)據(jù)的物理結(jié)構(gòu)和邏輯結(jié)構(gòu)有了區(qū)別,但較簡(jiǎn)單。程序開(kāi)始通過(guò)文件名和數(shù)據(jù)打交道,不必關(guān)心數(shù)據(jù)的物理存放位置,對(duì)數(shù)據(jù)的讀/寫方法由文件系統(tǒng)提供。(3)程序和數(shù)據(jù)之間有了一定的獨(dú)立性。應(yīng)用程序通過(guò)文件系統(tǒng)對(duì)數(shù)據(jù)文件中的數(shù)據(jù)進(jìn)行存取和加工,程序員不必過(guò)多地考慮數(shù)據(jù)的物理存儲(chǔ)細(xì)節(jié),并且,數(shù)據(jù)在存儲(chǔ)上的改變不一定反映在程序上,節(jié)省了維護(hù)工作。(4)出現(xiàn)了多種文件存儲(chǔ)形式及相應(yīng)的訪問(wèn)方式;但文件之間是獨(dú)立的,它們之間的聯(lián)系要通過(guò)程序去構(gòu)造,文件的共享性也還比較差。數(shù)據(jù)的存取基本上以記錄為單位。1221.2數(shù)據(jù)管理技術(shù)的發(fā)展文件系統(tǒng)階段的主要特點(diǎn):131.2數(shù)據(jù)管理技術(shù)的發(fā)展文件系統(tǒng)階段程序和數(shù)據(jù)之間的關(guān)系可以用下圖來(lái)描述:應(yīng)用程序1文件1應(yīng)用程序2文件2應(yīng)用程序n文件n…………文件系統(tǒng)1231.2數(shù)據(jù)管理技術(shù)的發(fā)展文件系統(tǒng)階段程序和數(shù)據(jù)之間1.2數(shù)據(jù)管理技術(shù)的發(fā)展雖然文件系統(tǒng)比人工管理有了長(zhǎng)足的進(jìn)步,但是文件系統(tǒng)所能提供的數(shù)據(jù)存取方法和操作數(shù)據(jù)的手段還是非常的有限。數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)和程序之間的依賴關(guān)系并未根本改變;數(shù)據(jù)冗余大;數(shù)據(jù)的重復(fù)以及數(shù)據(jù)之間沒(méi)有建立起相互聯(lián)系還會(huì)造成數(shù)據(jù)的不一致性。隨著信息時(shí)代的到來(lái),人們要處理的信息量急劇增加,對(duì)數(shù)據(jù)的處理要求也越來(lái)越復(fù)雜,文件系統(tǒng)的功能已經(jīng)不能適應(yīng)新的需求,而數(shù)據(jù)庫(kù)技術(shù)也正是在這種需求的推動(dòng)下逐步產(chǎn)生的。1241.2數(shù)據(jù)管理技術(shù)的發(fā)展雖然文件系統(tǒng)比人工管理有1.2數(shù)據(jù)管理技術(shù)的發(fā)展3.數(shù)據(jù)庫(kù)系統(tǒng)階段數(shù)據(jù)庫(kù)系統(tǒng)階段使用數(shù)據(jù)庫(kù)技術(shù)來(lái)管理數(shù)據(jù)。它克服了文件系統(tǒng)的不足,并增強(qiáng)了許多新功能。在這一階段,數(shù)據(jù)由數(shù)據(jù)庫(kù)管理系統(tǒng)統(tǒng)一控制,數(shù)據(jù)不再面向某個(gè)應(yīng)用而是面向整個(gè)系統(tǒng),因此數(shù)據(jù)可以被多個(gè)用戶、多個(gè)應(yīng)用共享。1251.2數(shù)據(jù)管理技術(shù)的發(fā)展3.數(shù)據(jù)庫(kù)系統(tǒng)階段161.2數(shù)據(jù)管理技術(shù)的發(fā)展數(shù)據(jù)庫(kù)系統(tǒng)階段的特點(diǎn):(1)能根據(jù)不同的需要按不同的方法組織數(shù)據(jù),以最大限度地提高用戶或應(yīng)用程序訪問(wèn)數(shù)據(jù)的效率。(2)數(shù)據(jù)庫(kù)不僅能夠保存數(shù)據(jù)本身,還能保存數(shù)據(jù)之間的相互聯(lián)系,保證了對(duì)數(shù)據(jù)修改的一致性。(3)相同的數(shù)據(jù)可以共享,降低了數(shù)據(jù)的冗余度。(4)數(shù)據(jù)具有較高的獨(dú)立性,數(shù)據(jù)的組織和存儲(chǔ)方法與應(yīng)用程序相互獨(dú)立,互不依賴,大大降低了應(yīng)用程序的開(kāi)發(fā)代價(jià)和維護(hù)代價(jià)。(5)提供了一整套的安全機(jī)制來(lái)保證數(shù)據(jù)的安全、可靠。(6)可以給數(shù)據(jù)定義一些約束條件來(lái)保證數(shù)據(jù)的正確性。1261.2數(shù)據(jù)管理技術(shù)的發(fā)展數(shù)據(jù)庫(kù)系統(tǒng)階段的特點(diǎn):171.2數(shù)據(jù)管理技術(shù)的發(fā)展數(shù)據(jù)庫(kù)系統(tǒng)階段應(yīng)用程序和數(shù)據(jù)庫(kù)之間的關(guān)系可以用下圖來(lái)表示:應(yīng)用程序1應(yīng)用程序2應(yīng)用程序n……數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)1271.2數(shù)據(jù)管理技術(shù)的發(fā)展數(shù)據(jù)庫(kù)系統(tǒng)階段應(yīng)用程序和數(shù)1.3數(shù)據(jù)模型數(shù)據(jù)庫(kù)是某個(gè)企業(yè)、組織或部門所涉及的數(shù)據(jù)的綜合,它不僅要反映數(shù)據(jù)本身的內(nèi)容,而且要反映數(shù)據(jù)之間的聯(lián)系。由于計(jì)算機(jī)不可能直接處理現(xiàn)實(shí)世界中的具體事物,所以人們必須事先把具體事物轉(zhuǎn)換成計(jì)算機(jī)能夠處理的數(shù)據(jù)。在數(shù)據(jù)庫(kù)技術(shù)中使用數(shù)據(jù)模型來(lái)抽象、表示現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。

模型:對(duì)現(xiàn)實(shí)世界特征的模擬和抽象。

數(shù)據(jù)模型:對(duì)現(xiàn)實(shí)世界數(shù)據(jù)特征的模擬和抽象。1281.3數(shù)據(jù)模型數(shù)據(jù)庫(kù)是某個(gè)企業(yè)、組織或部門所涉1.3數(shù)據(jù)模型現(xiàn)實(shí)世界中的數(shù)據(jù)要進(jìn)入到數(shù)據(jù)庫(kù)中,需要經(jīng)過(guò)人們的認(rèn)識(shí)、理解、整理、規(guī)范和加工??梢园堰@一過(guò)程劃分成三個(gè)主要階段,即現(xiàn)實(shí)世界階段、信息世界階段和機(jī)器世界階段。現(xiàn)實(shí)世界中的數(shù)據(jù)經(jīng)過(guò)人們的認(rèn)識(shí)和抽象,形成信息世界;在信息世界中用概念模型來(lái)描述數(shù)據(jù)及其聯(lián)系,概念模型按用戶的觀點(diǎn)對(duì)數(shù)據(jù)和信息進(jìn)行建模,獨(dú)立于具體的機(jī)器和DBMS;根據(jù)所使用的具體機(jī)器和DBMS,需要對(duì)概念模型進(jìn)行進(jìn)一步轉(zhuǎn)換,形成在具體機(jī)器環(huán)境下可以實(shí)現(xiàn)的數(shù)據(jù)模型。1291.3數(shù)據(jù)模型現(xiàn)實(shí)世界中的數(shù)據(jù)要進(jìn)入到數(shù)據(jù)庫(kù)中,1.3數(shù)據(jù)模型三個(gè)階段之間的相互關(guān)系:不依賴于具體機(jī)器和DBMS依賴于具體機(jī)器和DBMS現(xiàn)實(shí)世界信息世界:概念模型機(jī)器世界:某DBMS支持的數(shù)據(jù)模型抽象轉(zhuǎn)換1301.3數(shù)據(jù)模型三個(gè)階段之間的相互關(guān)系:不依賴于具1.3.1現(xiàn)實(shí)世界1.實(shí)體:現(xiàn)實(shí)世界中客觀存在并可以相互區(qū)分的事物稱。如學(xué)生、課程、零件、案件等

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論