數(shù)據(jù)庫(kù)原理及應(yīng)用-電子教案-卜艷萍_第1頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用-電子教案-卜艷萍_第2頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用-電子教案-卜艷萍_第3頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用-電子教案-卜艷萍_第4頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用-電子教案-卜艷萍_第5頁(yè)
已閱讀5頁(yè),還剩395頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用1數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用大連理工大學(xué)出版社卜艷萍主編2009年2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用2第1章數(shù)據(jù)庫(kù)系統(tǒng)概述數(shù)據(jù)庫(kù)系統(tǒng)的基本概念數(shù)據(jù)庫(kù)系統(tǒng)數(shù)據(jù)模型數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用3數(shù)據(jù)庫(kù)系統(tǒng)的基本概念數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展信息、數(shù)據(jù)與數(shù)據(jù)處理數(shù)據(jù)庫(kù)與數(shù)據(jù)庫(kù)管理系統(tǒng)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用4數(shù)據(jù)管理技術(shù)對(duì)數(shù)據(jù)進(jìn)行收集、保存、加工和傳播的一系列活動(dòng)的總和稱(chēng)為數(shù)據(jù)處理,數(shù)據(jù)處理的核心問(wèn)題就是數(shù)據(jù)管理。數(shù)據(jù)管理技術(shù)是指對(duì)數(shù)據(jù)的分類(lèi)、編碼、存儲(chǔ)、檢索和維護(hù)的技術(shù)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用5人工管理階段數(shù)據(jù)不保存;沒(méi)有專(zhuān)用的軟件對(duì)數(shù)據(jù)進(jìn)行管理;程序中的存儲(chǔ)子程序隨著存儲(chǔ)結(jié)構(gòu)的改變而改變,使得程序依賴(lài)于數(shù)據(jù);只有程序的概念;數(shù)據(jù)面向于應(yīng)用;對(duì)數(shù)據(jù)的存取以記錄為單位,靈活性差。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用6人工管理階段2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用7文件系統(tǒng)階段數(shù)據(jù)可長(zhǎng)期保存在外存的磁盤(pán)上;數(shù)據(jù)的物理結(jié)構(gòu)與邏輯結(jié)構(gòu)有了區(qū)別,但較簡(jiǎn)單;文件的形式已多樣化;有了存儲(chǔ)文件以后,數(shù)據(jù)不再僅僅屬于某個(gè)特定的程序,而可以重復(fù)使用;對(duì)數(shù)據(jù)的存取基本上還是以記錄為單位。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用8文件系統(tǒng)管理數(shù)據(jù)的缺點(diǎn)數(shù)據(jù)冗余度大數(shù)據(jù)的不一致性程序與數(shù)據(jù)相互依賴(lài)數(shù)據(jù)無(wú)集中管理編寫(xiě)應(yīng)用程序很不方便2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用9文件管理階段2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用10數(shù)據(jù)庫(kù)系統(tǒng)階段數(shù)據(jù)庫(kù)技術(shù)為數(shù)據(jù)管理提供了一種較為完善的高級(jí)管理方式。它克服了文件管理方式下分散管理數(shù)據(jù)的弱點(diǎn),對(duì)所有的數(shù)據(jù)實(shí)行統(tǒng)一、集中的管理。使數(shù)據(jù)存儲(chǔ)獨(dú)立于使用它的程序,從而實(shí)現(xiàn)數(shù)據(jù)共享。數(shù)據(jù)庫(kù)是通用化的相關(guān)數(shù)據(jù)集合,它不僅包括數(shù)據(jù)本身,而且包括關(guān)于數(shù)據(jù)之間的聯(lián)系。為數(shù)據(jù)庫(kù)的建立、使用和維護(hù)而配置的軟件稱(chēng)為數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS(DatabaseManagementSystem),它是在操作系統(tǒng)支持下運(yùn)行的。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用11數(shù)據(jù)庫(kù)系統(tǒng)階段2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用12數(shù)據(jù)庫(kù)系統(tǒng)與文件系統(tǒng)的關(guān)系①控制方式文件系統(tǒng)中的數(shù)據(jù)文件由各個(gè)應(yīng)用程序員根據(jù)需要組織起來(lái),并由各應(yīng)用程序負(fù)責(zé)建立、使用和維護(hù),因此其控制方式是分散的;數(shù)據(jù)庫(kù)中的數(shù)據(jù)文件是由數(shù)據(jù)庫(kù)系統(tǒng)統(tǒng)一規(guī)劃,按照一定的數(shù)據(jù)模型組織和建立的,由系統(tǒng)統(tǒng)一管理和集中控制。②數(shù)據(jù)結(jié)構(gòu)文件系統(tǒng)中的文件結(jié)構(gòu)簡(jiǎn)單,不能反映它所代表的現(xiàn)實(shí)世界中各事物之間的內(nèi)在聯(lián)系;數(shù)據(jù)庫(kù)中的數(shù)據(jù)是一個(gè)組織的所有應(yīng)用所需數(shù)據(jù)的集成,反映了各數(shù)據(jù)所代表的現(xiàn)實(shí)世界各事物之間存在的內(nèi)在聯(lián)系。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用13數(shù)據(jù)庫(kù)系統(tǒng)與文件系統(tǒng)的關(guān)系③數(shù)據(jù)獨(dú)立性文件系統(tǒng)中的數(shù)據(jù)文件是面向應(yīng)用的,文件系統(tǒng)是數(shù)據(jù)相關(guān)的。數(shù)據(jù)庫(kù)系統(tǒng)是面向數(shù)據(jù)的系統(tǒng),它具有高度的數(shù)據(jù)獨(dú)立性。④數(shù)據(jù)的維護(hù)數(shù)據(jù)庫(kù)系統(tǒng)很容易發(fā)現(xiàn)故障,排除故障并恢復(fù)到故障前的狀態(tài);文件系統(tǒng)本身無(wú)完整性約束的定義和檢查功能,所以它沒(méi)有故障恢復(fù)功能。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用14信息的定義信息是現(xiàn)實(shí)世界事物的存在方式或運(yùn)動(dòng)狀態(tài)的反映。信息具有可感知、可存儲(chǔ)、可加工、可傳遞和可再生等自然屬性,信息又是社會(huì)上各行各業(yè)不可缺少的資源,這也是信息的社會(huì)屬性。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用15信息的特征①信息源于物質(zhì)和能量。②信息是可以感知的。③信息是可存儲(chǔ)的。④信息是可以加工、傳遞和再生的。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用16信息系統(tǒng)信息系統(tǒng)是指為了某些明確的目的而建立的,由人員、設(shè)備、程序和數(shù)據(jù)集合構(gòu)成的統(tǒng)一整體。信息系統(tǒng)的主要功能是提供信息,以支持一個(gè)組織機(jī)構(gòu)的運(yùn)行、管理和決策。信息系統(tǒng)可分為三類(lèi):數(shù)據(jù)處理系統(tǒng),管理信息系統(tǒng)和決策支持系統(tǒng)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用17數(shù)據(jù)數(shù)據(jù)通常指用符號(hào)記錄下來(lái)的可加以鑒別的信息。數(shù)據(jù)的概念包括兩個(gè)方面:數(shù)據(jù)內(nèi)容是事物特性的反映或描述;數(shù)據(jù)是符號(hào)的集合。數(shù)據(jù)是信息的符號(hào)表示或稱(chēng)為載體,信息則是數(shù)據(jù)的內(nèi)涵,是對(duì)數(shù)據(jù)的語(yǔ)義解釋。數(shù)據(jù)是數(shù)據(jù)庫(kù)中存儲(chǔ)的基本對(duì)象。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用18數(shù)據(jù)處理和數(shù)據(jù)管理數(shù)據(jù)處理就是指對(duì)各種類(lèi)型的數(shù)據(jù)進(jìn)行收集、存儲(chǔ)、分類(lèi)、排序、計(jì)算或加工、檢索、傳輸、遞交等工作。數(shù)據(jù)處理通常也稱(chēng)為信息處理。數(shù)據(jù)管理和數(shù)據(jù)處理一樣,都是計(jì)算機(jī)系統(tǒng)的最基本的支撐技術(shù)。數(shù)據(jù)庫(kù)是現(xiàn)階段數(shù)據(jù)管理的主要形式。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用19信息處理信息處理的基本環(huán)節(jié)包括:人們將原始信息表示成數(shù)據(jù),稱(chēng)為源數(shù)據(jù),然后對(duì)這些源數(shù)據(jù)進(jìn)行匯集、存儲(chǔ)、綜合、推導(dǎo)。從這些原始的、雜亂的、難以理解的數(shù)據(jù)中抽取或推導(dǎo)出新的數(shù)據(jù),這些新的數(shù)據(jù)稱(chēng)為結(jié)果數(shù)據(jù),結(jié)果數(shù)據(jù)對(duì)某些特定的人們來(lái)說(shuō)是有價(jià)值的、有意義的。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用20信息處理的基本環(huán)節(jié)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用21信息的三個(gè)領(lǐng)域(1)現(xiàn)實(shí)世界現(xiàn)實(shí)世界又稱(chēng)事實(shí)世界。現(xiàn)實(shí)世界指存在于人們頭腦之外的客觀(guān)世界,就是我們賴(lài)以生存的生活環(huán)境。(2)觀(guān)念世界觀(guān)念世界又稱(chēng)信息世界。它是現(xiàn)實(shí)世界在人們頭腦中的反映。(3)數(shù)據(jù)世界數(shù)據(jù)世界又稱(chēng)計(jì)算機(jī)世界或機(jī)器世界。它是數(shù)據(jù)庫(kù)系統(tǒng)的處理對(duì)象?,F(xiàn)實(shí)世界中的事實(shí)經(jīng)過(guò)觀(guān)念世界轉(zhuǎn)換成信息,并經(jīng)過(guò)加工、編碼進(jìn)入計(jì)算機(jī)世界。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用22數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)是指長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi)的、有組織的、可共享的數(shù)據(jù)集合。數(shù)據(jù)庫(kù)是為滿(mǎn)足某部門(mén)各種用戶(hù)的多種應(yīng)用需要,在計(jì)算機(jī)系統(tǒng)中按照一定數(shù)據(jù)模型組織、存儲(chǔ)和使用的互相關(guān)聯(lián)的數(shù)據(jù)集合。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用23數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)是指數(shù)據(jù)庫(kù)系統(tǒng)中對(duì)數(shù)據(jù)進(jìn)行管理的軟件系統(tǒng),它是數(shù)據(jù)庫(kù)系統(tǒng)的核心組成部分,數(shù)據(jù)庫(kù)系統(tǒng)的一切操作,包括查詢(xún)、更新及各種控制,都是通過(guò)DBMS進(jìn)行的。DBMS是數(shù)據(jù)庫(kù)系統(tǒng)的基礎(chǔ),研制DBMS的基本目標(biāo)是擴(kuò)大功能,提高性能和可用性,從而提高用戶(hù)的生產(chǎn)率。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用24DBMS的主要功能數(shù)據(jù)定義功能數(shù)據(jù)操縱功能數(shù)據(jù)庫(kù)的建立和維護(hù)功能數(shù)據(jù)庫(kù)的運(yùn)行管理數(shù)據(jù)字典2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用25數(shù)據(jù)庫(kù)管理系統(tǒng)的工作過(guò)程(1)用戶(hù)在其應(yīng)用程序中安排一條讀記錄的DML語(yǔ)句。該語(yǔ)句給出被涉及的外模式中記錄類(lèi)型名及欲讀記錄的關(guān)鍵碼值。當(dāng)計(jì)算機(jī)執(zhí)行該DML語(yǔ)句時(shí),立即啟動(dòng)DBMS,并向DBMS發(fā)出讀記錄的命令。(2)DBMS接到命令后,首先訪(fǎng)問(wèn)該用戶(hù)對(duì)應(yīng)的外模式,檢查該操作是否在合法授權(quán)范圍內(nèi),若不合法則拒絕執(zhí)行并向應(yīng)用程序狀態(tài)返回區(qū)發(fā)出不成功的狀態(tài)信息。若合法則執(zhí)行下一步。(3)DBMS讀取相應(yīng)的模式描述,并從外模式映像到概念模式。也就是把外模式的外部記錄格式映像到概念模式的概念記錄格式,決定概念模式應(yīng)讀入哪些記錄。(4)DBMS調(diào)用相應(yīng)的內(nèi)模式描述,并從概念模式映像到內(nèi)模式,即把概念模式的概念記錄格式映像到內(nèi)模式的內(nèi)部記錄格式,確定應(yīng)讀入哪些物理記錄以及具體的地址信息。DBMS向操作系統(tǒng)發(fā)出從指定地址讀取物理記錄的命令。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用26數(shù)據(jù)庫(kù)管理系統(tǒng)的工作過(guò)程(5)操作系統(tǒng)執(zhí)行讀命令,按指定地址從數(shù)據(jù)庫(kù)中把記錄讀入到數(shù)據(jù)庫(kù)的系統(tǒng)緩沖區(qū),并在操作結(jié)束后向DBMS作出回答。(6)DBMS收到操作系統(tǒng)讀操作結(jié)束的回答后,參照概念模式,將讀入系統(tǒng)緩沖區(qū)中的內(nèi)容變換成概念記錄,再參照外模式,變換成用戶(hù)要求讀取的外部記錄。(7)DBMS把導(dǎo)出的外部記錄從系統(tǒng)緩沖區(qū)送到應(yīng)用程序的“程序工作區(qū)”中。(8)DBMS向運(yùn)行日志數(shù)據(jù)庫(kù)發(fā)出讀一條記錄的信息。以備以后查詢(xún)使用數(shù)據(jù)庫(kù)的情況。(9)DBMS將操作執(zhí)行成功與否的狀態(tài)信息返回給用戶(hù)。(10)應(yīng)用程序根據(jù)返回的狀態(tài)信息決定是否使用工作區(qū)中的數(shù)據(jù)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用27數(shù)據(jù)庫(kù)系統(tǒng)數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn)和功能數(shù)據(jù)庫(kù)系統(tǒng)的組成2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用28數(shù)據(jù)庫(kù)系統(tǒng)定義數(shù)據(jù)庫(kù)系統(tǒng)(DataBaseSystem,簡(jiǎn)稱(chēng)DBS)是指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫(kù)后的系統(tǒng),其功能層次由低到高依次為數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)、應(yīng)用開(kāi)發(fā)工具、應(yīng)用系統(tǒng)、數(shù)據(jù)庫(kù)管理員和用戶(hù)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用29數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用30數(shù)據(jù)庫(kù)系統(tǒng)的優(yōu)越性①靈活性。②簡(jiǎn)易性。③面向用戶(hù)。④數(shù)據(jù)控制。⑤加快應(yīng)用系統(tǒng)開(kāi)發(fā)速度。⑥程序設(shè)計(jì)方便。⑦修改方便。⑧標(biāo)準(zhǔn)化。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用31數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn)數(shù)據(jù)共享數(shù)據(jù)的結(jié)構(gòu)化數(shù)據(jù)的獨(dú)立性可控冗余度數(shù)據(jù)由DBMS統(tǒng)一管理和控制標(biāo)準(zhǔn)化2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用32數(shù)據(jù)庫(kù)系統(tǒng)的功能結(jié)構(gòu)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用33數(shù)據(jù)庫(kù)系統(tǒng)的功能提供高級(jí)的用戶(hù)接口查詢(xún)處理和優(yōu)化數(shù)據(jù)目錄管理并發(fā)控制恢復(fù)功能實(shí)施安全性保護(hù)完整性約束檢查訪(fǎng)問(wèn)控制2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用34數(shù)據(jù)庫(kù)系統(tǒng)的組成數(shù)據(jù)集合:數(shù)據(jù)集合是某一組織中各種應(yīng)用所需數(shù)據(jù)的集成,并為這些應(yīng)用所共享。硬件和軟件:一定的硬件和軟件環(huán)境是保證數(shù)據(jù)庫(kù)系統(tǒng)順利工作的必要條件。系統(tǒng)人員和用戶(hù):數(shù)據(jù)庫(kù)管理員、程序設(shè)計(jì)人員和終端用戶(hù)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用35數(shù)據(jù)庫(kù)系統(tǒng)的軟件DBMS和支持DBMS運(yùn)行的操作系統(tǒng)。DBMS是為數(shù)據(jù)庫(kù)的建立、使用和維護(hù)配置的軟件。具有與數(shù)據(jù)庫(kù)接口的高級(jí)語(yǔ)言及其編譯系統(tǒng),便于開(kāi)發(fā)應(yīng)用程序。以DBMS為核心的應(yīng)用開(kāi)發(fā)工具。應(yīng)用開(kāi)發(fā)工具是系統(tǒng)為應(yīng)用開(kāi)發(fā)人員和最終用戶(hù)提供的高效率、多功能的應(yīng)用生成器、第四代語(yǔ)言等各種軟件工具。它們?yōu)閿?shù)據(jù)庫(kù)系統(tǒng)的開(kāi)發(fā)和應(yīng)用提供了良好的環(huán)境。為特定應(yīng)用環(huán)境開(kāi)發(fā)的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用36數(shù)據(jù)庫(kù)管理員的職責(zé)①?zèng)Q定數(shù)據(jù)庫(kù)的信息內(nèi)容。②充當(dāng)數(shù)據(jù)庫(kù)系統(tǒng)與用戶(hù)的聯(lián)絡(luò)員。③決定數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)和訪(fǎng)問(wèn)策略。④決定數(shù)據(jù)庫(kù)的保護(hù)策略。⑤監(jiān)視系統(tǒng)的工作,響應(yīng)系統(tǒng)的某些變化,改善系統(tǒng)的“時(shí)空”性能,提高系統(tǒng)的效率。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用37數(shù)據(jù)模型數(shù)據(jù)模型的組成要素概念模型層次模型網(wǎng)狀模型關(guān)系模型數(shù)據(jù)模型設(shè)計(jì)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用38現(xiàn)實(shí)世界中客觀(guān)對(duì)象的抽象過(guò)程為了把現(xiàn)實(shí)世界中的具體事物抽象、組織為某一DBMS支持的數(shù)據(jù)模型,人們常常將現(xiàn)實(shí)世界抽象為信息世界,然后將信息世界轉(zhuǎn)換為機(jī)器世界。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用39數(shù)據(jù)模型的組成要素?cái)?shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)是指數(shù)據(jù)庫(kù)中數(shù)據(jù)對(duì)象以及數(shù)據(jù)對(duì)象之間的聯(lián)系,是對(duì)系統(tǒng)靜態(tài)特性的描述。數(shù)據(jù)操作數(shù)據(jù)操作是指對(duì)數(shù)據(jù)庫(kù)中各種對(duì)象允許執(zhí)行的操作的集合,包括操作及有關(guān)的操作規(guī)則。數(shù)據(jù)的約束條件數(shù)據(jù)的約束條件是一組完整性規(guī)則的集合。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用40概念模型概念模型用于信息世界的建模,是現(xiàn)實(shí)世界到信息世界的第一層抽象,是數(shù)據(jù)庫(kù)設(shè)計(jì)人員進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)的有力工具,也是數(shù)據(jù)庫(kù)設(shè)計(jì)人員和用戶(hù)之間進(jìn)行交流的語(yǔ)言;概念模型一方面應(yīng)該具有較強(qiáng)的語(yǔ)義表達(dá)能力,能夠方便、直接地表達(dá)應(yīng)用中的各種語(yǔ)義知識(shí),另一方面它還應(yīng)該簡(jiǎn)單、清晰、易于用戶(hù)理解。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用41信息世界中的基本概念實(shí)體:現(xiàn)實(shí)世界中客觀(guān)存在并可相互區(qū)別的“事物”被稱(chēng)為實(shí)體。屬性:實(shí)體具有的某種或若干種特性或特征稱(chēng)為屬性。實(shí)體型:具有相同屬性的實(shí)體必然具有共同的特征和性質(zhì)。用實(shí)體名及其屬性名集合來(lái)抽象和刻畫(huà)同類(lèi)實(shí)體,稱(chēng)為實(shí)體型。實(shí)體集:同一類(lèi)型的實(shí)體集合被稱(chēng)為實(shí)體集,即具有同一類(lèi)屬性的客觀(guān)存在的事物的集合。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用42信息世界中的基本概念域:域是屬性所取的值的變化范圍。即同一實(shí)體集中各實(shí)體同一屬性具有的值在一定范疇之內(nèi),這一范疇稱(chēng)為該屬性的值域,簡(jiǎn)稱(chēng)為域。鍵:一個(gè)屬性值或一組屬性值如能唯一標(biāo)識(shí)該實(shí)體集中的各實(shí)體,則稱(chēng)為該實(shí)體的鍵。聯(lián)系:聯(lián)系一般指實(shí)體相互之間關(guān)系的抽象表示,亦即現(xiàn)實(shí)世界中事物之間的語(yǔ)義關(guān)系。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用43實(shí)體之間的聯(lián)系

一對(duì)一聯(lián)系:如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中至多有一個(gè)(也可以沒(méi)有)實(shí)體與之聯(lián)系,反之亦然,則稱(chēng)實(shí)體集A、B間存在著“一對(duì)一”的聯(lián)系2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用44實(shí)體之間的聯(lián)系

一對(duì)多聯(lián)系:如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n

0)與之聯(lián)系,反之,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中至多只有一個(gè)實(shí)體與之聯(lián)系,則稱(chēng)實(shí)體集A、B間有一對(duì)多聯(lián)系。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用45實(shí)體之間的聯(lián)系

多對(duì)多聯(lián)系:如果兩個(gè)實(shí)體集A、B中的每一個(gè)實(shí)體都和另一個(gè)實(shí)體集中的任意多個(gè)(包括零個(gè))實(shí)體有聯(lián)系,則稱(chēng)這兩個(gè)實(shí)體集是多對(duì)多的聯(lián)系,則稱(chēng)實(shí)體集A、B間具有多對(duì)多聯(lián)系。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用46層次模型層次模型是數(shù)據(jù)庫(kù)系統(tǒng)中最常用的數(shù)據(jù)模型之一。它采用層次模型作為數(shù)據(jù)的組織方式,屬于格式化數(shù)據(jù)模型。這種模型的特征是:有且僅有一個(gè)結(jié)點(diǎn)無(wú)雙親,這個(gè)結(jié)點(diǎn)稱(chēng)為根結(jié)點(diǎn)。其他結(jié)點(diǎn)有且僅有一個(gè)雙親。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用47層次模型示意圖2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用48網(wǎng)狀模型在層次模型的基礎(chǔ)上,取消層次模型的限制,將樹(shù)的結(jié)構(gòu)變成圖的結(jié)構(gòu),層次模型就轉(zhuǎn)化成了網(wǎng)狀模型。廣義講,任意一個(gè)連通的基本層次聯(lián)系的集合就是一個(gè)網(wǎng)狀模型。在數(shù)據(jù)庫(kù)中,把滿(mǎn)足以下兩個(gè)條件的基本層次聯(lián)系集合稱(chēng)為網(wǎng)狀模型:可以有一個(gè)以上的結(jié)點(diǎn)無(wú)雙親;至少有一個(gè)結(jié)點(diǎn)有多于一個(gè)的雙親。 2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用49網(wǎng)狀模型示意圖2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用50關(guān)系模型關(guān)系模型的基本組成是關(guān)系。它把記錄集合定義為一張二維表,即關(guān)系。表的每一行是一個(gè)記錄,表示一個(gè)實(shí)體,也稱(chēng)為一個(gè)元組。每一列是記錄中的一個(gè)數(shù)據(jù)項(xiàng),表示實(shí)體的一個(gè)屬性。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用51關(guān)系模型示例2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用52數(shù)據(jù)模型設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)的核心問(wèn)題之一就是要設(shè)計(jì)一個(gè)好的數(shù)據(jù)模型。數(shù)據(jù)與記錄項(xiàng):在數(shù)據(jù)模型中,用數(shù)據(jù)描述的實(shí)體有對(duì)象與屬性之分。描述對(duì)象的數(shù)據(jù)稱(chēng)為記錄,而描述屬性的數(shù)據(jù)稱(chēng)為項(xiàng)。型與值:由于實(shí)體分為總體與個(gè)體兩級(jí),所以它的數(shù)據(jù)也分為“型”(表示總體)與值(表示個(gè)體)兩級(jí)。記錄與文件:記錄類(lèi)型是數(shù)據(jù)項(xiàng)型的一個(gè)有序組,記錄值是數(shù)據(jù)項(xiàng)值的同一有序組;文件是記錄型與值的總和。數(shù)據(jù)模型:數(shù)據(jù)模型是一種形式化描述數(shù)據(jù)、數(shù)據(jù)之間聯(lián)系以及有關(guān)語(yǔ)義約束的方法,是數(shù)據(jù)庫(kù)系統(tǒng)中用以提供信息表示和操作手段的形式框架。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用53數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)概念數(shù)據(jù)模型只用于數(shù)據(jù)庫(kù)的設(shè)計(jì),邏輯數(shù)據(jù)模型和物理數(shù)據(jù)模型用于DBMS的實(shí)現(xiàn)。數(shù)據(jù)模型是描述數(shù)據(jù)的手段,而數(shù)據(jù)模式是用給定數(shù)據(jù)模型對(duì)具體數(shù)據(jù)的描述。在DBMS中,由于數(shù)據(jù)用多級(jí)數(shù)據(jù)模型來(lái)描述,相應(yīng)地也有多級(jí)數(shù)據(jù)模式。DBMS提供模式描述語(yǔ)言(模式DDL)來(lái)嚴(yán)格地定義數(shù)據(jù)模式,美國(guó)國(guó)家標(biāo)準(zhǔn)協(xié)會(huì)(ANSI)的ANSI/X3/SPARC報(bào)告把數(shù)據(jù)模式分為三級(jí)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用54數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)模式:模式是所有概念記錄類(lèi)型的定義,因此它是數(shù)據(jù)庫(kù)中全部數(shù)據(jù)邏輯結(jié)構(gòu)的描述,即數(shù)據(jù)庫(kù)中所有記錄類(lèi)型的整體描述,也稱(chēng)邏輯模式。外模式:外模式也稱(chēng)子模式或用戶(hù)模式,它是用戶(hù)與數(shù)據(jù)庫(kù)系統(tǒng)的接口。內(nèi)模式:內(nèi)模式也稱(chēng)存儲(chǔ)模式,一個(gè)數(shù)據(jù)庫(kù)只有一個(gè)內(nèi)模式。內(nèi)模式要定義所有的內(nèi)部記錄類(lèi)型,定義一些索引、數(shù)據(jù)在存儲(chǔ)器的安排以及安全性、恢復(fù)和其他管理方面的細(xì)節(jié)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用55三級(jí)模式結(jié)構(gòu)的特征①一個(gè)數(shù)據(jù)庫(kù)的全局邏輯描述(概念模式)是獨(dú)立于數(shù)據(jù)庫(kù)的其他所有結(jié)構(gòu)描述的。在定義一個(gè)數(shù)據(jù)庫(kù)的各層次結(jié)構(gòu)時(shí),全局邏輯結(jié)構(gòu)(概念模式)應(yīng)首先定義。②內(nèi)模式是依賴(lài)于全局邏輯結(jié)構(gòu)的,其目的是具體地將概念模式中所定義的全部數(shù)據(jù)及其聯(lián)系進(jìn)行適當(dāng)?shù)慕M織并加以存儲(chǔ),以實(shí)現(xiàn)較好的運(yùn)行效率。③用戶(hù)的局部邏輯結(jié)構(gòu)(外模式)是獨(dú)立于存儲(chǔ)模式和存儲(chǔ)設(shè)備的,它必須在數(shù)據(jù)庫(kù)的全局邏輯結(jié)構(gòu)描述的基礎(chǔ)上定義。④應(yīng)用程序是在外模式的數(shù)據(jù)結(jié)構(gòu)上編制的,因此,它必須依賴(lài)于特定的外模式。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用56數(shù)據(jù)庫(kù)系統(tǒng)的二級(jí)映像數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式是對(duì)數(shù)據(jù)的三個(gè)抽象級(jí)別,它把數(shù)據(jù)的具體組織留給DBMS管理,使用戶(hù)能邏輯地抽象地處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)在計(jì)算機(jī)中的具體表示方式與存儲(chǔ)方式。為了能夠在內(nèi)部實(shí)現(xiàn)這三個(gè)抽象層次的聯(lián)系和轉(zhuǎn)換,數(shù)據(jù)庫(kù)管理系統(tǒng)在這三級(jí)模式之間提供了兩層映象:外模式/模式映象和模式/內(nèi)模式映象。正是這兩層映象保證了數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)能夠具有較高的邏輯獨(dú)立性和物理獨(dú)立性。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用57數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用58外模式/模式映象模式描述的是數(shù)據(jù)的全局邏輯結(jié)構(gòu),外模式描述的是數(shù)據(jù)的局部邏輯結(jié)構(gòu)。對(duì)應(yīng)于同一個(gè)模式可以有任意多個(gè)外模式。對(duì)于每一個(gè)外模式,數(shù)據(jù)庫(kù)系統(tǒng)都有一個(gè)外模式/模式映象,它定義了該外模式與模式之間的對(duì)應(yīng)關(guān)系。這些映象定義通常包含在各自外模式的描述中。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用59模式/內(nèi)模式映象數(shù)據(jù)庫(kù)中只有一個(gè)模式,也只有一個(gè)內(nèi)模式,所以模式/內(nèi)模式映象是唯一的,它定義了數(shù)據(jù)庫(kù)全局邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)之間的對(duì)應(yīng)關(guān)系。當(dāng)數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)改變了,由數(shù)據(jù)庫(kù)管理員對(duì)模式/內(nèi)模式映象作相應(yīng)改變,可以使模式保持不變,從而應(yīng)用程序也不必改變。保證了數(shù)據(jù)與程序的物理獨(dú)立性,簡(jiǎn)稱(chēng)數(shù)據(jù)的物理獨(dú)立性。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用60Theend2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用61第2章關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)關(guān)系模型的數(shù)據(jù)模式關(guān)系代數(shù)關(guān)系的完整性規(guī)則關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化數(shù)據(jù)庫(kù)存儲(chǔ)技術(shù)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用62關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn)①簡(jiǎn)單明了的數(shù)據(jù)模型。②具有嚴(yán)禁的理論基礎(chǔ)。③實(shí)體表示方法和實(shí)體之間聯(lián)系的表示方法一致。④處理多對(duì)多的聯(lián)系方便。⑤使用的關(guān)系數(shù)據(jù)語(yǔ)言功能強(qiáng)大。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用63關(guān)系模型的數(shù)據(jù)模式關(guān)系數(shù)據(jù)結(jié)構(gòu)關(guān)系操作和關(guān)系數(shù)據(jù)語(yǔ)言2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用64關(guān)系模型的數(shù)據(jù)模式關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)是支持關(guān)系模型的數(shù)據(jù)庫(kù)系統(tǒng)。關(guān)系模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合和關(guān)系完整性約束三部分組成。關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)非常單一,在關(guān)系模型中,現(xiàn)實(shí)世界的實(shí)體以及實(shí)體間的各種聯(lián)系均用關(guān)系來(lái)表示。在用戶(hù)看來(lái),關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表。關(guān)系模型允許定義三類(lèi)完整性約束:實(shí)體完整性、參照完整性、和用戶(hù)定義的完整性。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用65關(guān)系數(shù)據(jù)結(jié)構(gòu)關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)很單一,就是關(guān)系,它是建立在集合代數(shù)基礎(chǔ)上的。在關(guān)系數(shù)據(jù)庫(kù)中,關(guān)系模型是型,關(guān)系是值,關(guān)系模式是對(duì)關(guān)系的描述。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用66術(shù)語(yǔ)關(guān)系。一個(gè)關(guān)系實(shí)質(zhì)上是一張二維表,每個(gè)關(guān)系有一個(gè)關(guān)系名。在計(jì)算機(jī)里,一個(gè)關(guān)系存儲(chǔ)為一個(gè)文件。元組。表中的行稱(chēng)為元組,每一行為一個(gè)元組,對(duì)應(yīng)存儲(chǔ)文件中的一個(gè)記錄值。屬性。表中的列稱(chēng)為屬性,每一列有一個(gè)屬性名,屬性值相當(dāng)于記錄中的數(shù)據(jù)項(xiàng)或者字段值。域。屬性的取值范圍稱(chēng)為域,即不同元組對(duì)同一個(gè)屬性的取值所限定的范圍,或稱(chēng)為屬性的值域。每一個(gè)屬性都對(duì)應(yīng)一個(gè)值域,不同的屬性也可以有相同的值域。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用67術(shù)語(yǔ)關(guān)系模式。對(duì)關(guān)系的描述稱(chēng)為關(guān)系模式,一個(gè)關(guān)系模式對(duì)應(yīng)一個(gè)關(guān)系文件的結(jié)構(gòu)。其格式為:關(guān)系名(屬性名1,屬性名2,……,屬性名n)。笛卡兒積。設(shè)一組域D1,D2,…,Dn(n≥2),允許有相同的域,這一組域D1,D2,…,Dn的笛卡兒積為:D1×D2×…×Dn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n},其中每一個(gè)元素(d1,d2,…,dn)叫作一個(gè)n元組或簡(jiǎn)稱(chēng)元組,元組中的每一個(gè)值di叫作一個(gè)分量。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用68關(guān)系中的鍵主鍵:關(guān)系有一個(gè)重要的性質(zhì),即在任何關(guān)系中,不能有兩個(gè)完全相同的元組。確定了主鍵的值,就能唯一地確定一個(gè)元組。主鍵可以為單個(gè)屬性,也可以為屬性的組合。候選鍵:凡是在一個(gè)關(guān)系中具有主鍵特性的屬性或?qū)傩越M,均稱(chēng)為候選鍵。因?yàn)樗鼈兌季哂斜贿x為主鍵的條件,所以一個(gè)關(guān)系可能有多個(gè)候選鍵,但只能選其中一個(gè)為主鍵。外鍵:當(dāng)關(guān)系中的某個(gè)或某些屬性由另一個(gè)關(guān)系的主鍵構(gòu)成時(shí),則該屬性或?qū)傩越M稱(chēng)為外鍵。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用69關(guān)系的性質(zhì)任意兩個(gè)元組(兩個(gè)行)不能完全相同。關(guān)系中元組(行)的次序是不重要的,可以任意交換。屬性(列)的次序也是不重要的,可以任意交換。同一列中的分量,必須來(lái)自同一個(gè)域,是同類(lèi)型的數(shù)據(jù)。屬性必須有不同的名稱(chēng),但不同的屬性可以出自相同的域,即它們的分量可以取值于同一個(gè)域。每一個(gè)分量必須是原子的,即是不可再分的數(shù)據(jù)項(xiàng)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用70關(guān)系操作關(guān)系模型中常用的關(guān)系操作包括:選擇、投影、連接、除、并、交、差等查詢(xún)操作和增加、刪除、修改操作兩大部分。查詢(xún)的表達(dá)能力是其中最主要的部分。關(guān)系操作的特點(diǎn)是集合操作方式,即操作的對(duì)象和結(jié)果都是集合。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用71關(guān)系數(shù)據(jù)語(yǔ)言數(shù)據(jù)庫(kù)操作語(yǔ)言包括查詢(xún)和增加、刪除、修改兩大部分功能。查詢(xún)的表達(dá)方式是數(shù)據(jù)操縱語(yǔ)言中最主要的部分。關(guān)系的數(shù)據(jù)操縱語(yǔ)言按照表達(dá)查詢(xún)的方式可以分為兩大類(lèi)。用對(duì)關(guān)系的運(yùn)算來(lái)表達(dá)查詢(xún)的方式稱(chēng)為關(guān)系代數(shù)。用謂詞來(lái)表達(dá)查詢(xún)要求的方式稱(chēng)為關(guān)系演算。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用72關(guān)系代數(shù)傳統(tǒng)的集合運(yùn)算專(zhuān)門(mén)的關(guān)系運(yùn)算2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用73關(guān)系代數(shù)關(guān)系代數(shù)是一種抽象的查詢(xún)語(yǔ)言,是關(guān)系數(shù)據(jù)操縱語(yǔ)言的一種傳統(tǒng)表達(dá)方式,它是用對(duì)關(guān)系的運(yùn)算來(lái)表達(dá)查詢(xún)的。任何一種運(yùn)算都是將一定的運(yùn)算符作用于一定的運(yùn)算對(duì)象上,得到預(yù)期的運(yùn)算結(jié)果。所以運(yùn)算對(duì)象、運(yùn)算符、運(yùn)算結(jié)果是運(yùn)算的三大要素。關(guān)系代數(shù)的運(yùn)算對(duì)象是關(guān)系,運(yùn)算結(jié)果亦為關(guān)系。關(guān)系代數(shù)用到的運(yùn)算符包括四類(lèi):集合運(yùn)算符、專(zhuān)門(mén)的關(guān)系運(yùn)算符、算術(shù)比較符和邏輯運(yùn)算符。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用74關(guān)系代數(shù)運(yùn)算符

2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用75傳統(tǒng)的集合運(yùn)算傳統(tǒng)的集合運(yùn)算是二目運(yùn)算,包括并、差、交、廣義笛卡兒積四種運(yùn)算。當(dāng)并、差、交用于關(guān)系運(yùn)算時(shí),參加運(yùn)算的關(guān)系必須是相容的和可并的,即它們應(yīng)有相同的目n(即兩個(gè)關(guān)系都有n個(gè)屬性),且相應(yīng)的屬性值來(lái)自同一個(gè)域。兩個(gè)分別為n目和m目關(guān)系R和S的廣義笛卡兒積是一個(gè)(n+m)目的關(guān)系,關(guān)系中的每一個(gè)元組的前n列是關(guān)系R中的一個(gè)元組,后m列是關(guān)系S中的一個(gè)元組。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用76專(zhuān)門(mén)的關(guān)系運(yùn)算專(zhuān)門(mén)的關(guān)系運(yùn)算,包括選擇、投影、連接和除。選擇是一種單目運(yùn)算,操作對(duì)象僅有一個(gè)關(guān)系,其作用是在關(guān)系的水平方向上選取符合給定條件的子集。投影是一種單目運(yùn)算,其作用為在關(guān)系的垂直方向上選取含有給定屬性的子集。連接是一種二目運(yùn)算,即操作對(duì)象有兩個(gè)關(guān)系,其作用是按照給定的條件,把兩個(gè)關(guān)系中的所有元組按一切可能的組合方式拼接起來(lái)。除是一種二目運(yùn)算,用文字表示為:<關(guān)系1>

<關(guān)系2>。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用77關(guān)系的完整性規(guī)則數(shù)據(jù)完整性由完整性規(guī)則來(lái)定義,關(guān)系模型的完整性規(guī)則是對(duì)關(guān)系的某種約束條件。關(guān)系模型中可以有三類(lèi)完整性約束:實(shí)體完整性、參照完整性和用戶(hù)定義的完整性。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用78實(shí)體完整性實(shí)體完整性規(guī)則:若屬性A是基本關(guān)系R的主屬性,則屬性A不能取空值。實(shí)體完整性規(guī)則是對(duì)關(guān)系中的主屬性值的約束,規(guī)定關(guān)系中的元組在組成主鍵的屬性上不能有空值?;娟P(guān)系的所有主屬性都不能取空值,而不僅是主鍵整體不能取空值。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用79實(shí)體完整性規(guī)則的說(shuō)明①實(shí)體完整性規(guī)則是針對(duì)基本關(guān)系而言的。一個(gè)基本表通常對(duì)應(yīng)現(xiàn)實(shí)世界的一個(gè)實(shí)體集。②現(xiàn)實(shí)世界中的實(shí)體是可區(qū)分的,即它們具有某種唯一性標(biāo)識(shí)。③相應(yīng)地,關(guān)系模型中以主鍵作為唯一性標(biāo)識(shí)。④主鍵中的屬性即主屬性不能取空值。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用80參照完整性參照完整性規(guī)則:若屬性(屬性組)F是關(guān)系R的外鍵,它與關(guān)系S的主鍵Ks相對(duì)應(yīng)(關(guān)系R和S不一定是不同的關(guān)系),則對(duì)于R中每個(gè)元組在F上的值必須為:或者取空值(F的每個(gè)屬性值均為空值);或者等于S中某個(gè)元組的主鍵值。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用81用戶(hù)定義的完整性用戶(hù)定義的完整性是針對(duì)某一具體關(guān)系數(shù)據(jù)庫(kù)的約束條件。這是針對(duì)某一具體數(shù)據(jù)的約束條件,由應(yīng)用環(huán)境決定。它反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿(mǎn)足的語(yǔ)義要求。用戶(hù)定義的完整性通常是定義對(duì)關(guān)系中除主鍵與外鍵屬性之外的其他屬性取值的約束,即對(duì)其他屬性的值域的約束。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用82關(guān)系完整性的操作當(dāng)執(zhí)行插入操作時(shí),首先檢查實(shí)體完整性規(guī)則,插入行在主鍵屬性上的值,是否已經(jīng)存在。當(dāng)執(zhí)行刪除操作時(shí),一般只需要檢查參照完整性規(guī)則。當(dāng)執(zhí)行更新操作時(shí),先執(zhí)行刪除操作,再執(zhí)行插入操作,即上述兩種情況的結(jié)合。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用83關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的一個(gè)有力工具就是關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化。規(guī)范化就是一系列規(guī)則,用于檢驗(yàn)數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的正確性,它可以幫助用戶(hù)避免一些不完善的數(shù)據(jù)庫(kù)設(shè)計(jì)存在的問(wèn)題。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用84不完善的關(guān)系模式數(shù)據(jù)冗余信息內(nèi)容有限不一致的數(shù)據(jù)更新異常(不一致性的危險(xiǎn))插入異常刪除異常2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用85函數(shù)依賴(lài)函數(shù)依賴(lài)是最重要的數(shù)據(jù)依賴(lài),類(lèi)似于變量之間的單值函數(shù)關(guān)系。函數(shù)依賴(lài)X→Y的定義為:對(duì)于X的每一個(gè)具體值,Y有唯一的具體值與之對(duì)應(yīng),則稱(chēng)Y函數(shù)依賴(lài)于X,或X函數(shù)決定Y,X稱(chēng)做決定因素。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用86部分函數(shù)依賴(lài)設(shè)X→Y是關(guān)系模式的一個(gè)函數(shù)依賴(lài),如果存在X的真子集X′,使得X′→Y成立,則稱(chēng)Y部分依賴(lài)于X,否則,稱(chēng)Y完全依賴(lài)于X。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用87傳遞函數(shù)依賴(lài)在同一關(guān)系模式中,如果存在非平凡的函數(shù)依賴(lài)X→Y,Y→Z,而不存在Y→X,則稱(chēng)Z傳遞依賴(lài)于X。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用88關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化主要有三種標(biāo)準(zhǔn)的規(guī)范化規(guī)則。如果一個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)符合第n個(gè)規(guī)則(n=1,2,3),就稱(chēng)它滿(mǎn)足第n范式。或者說(shuō),關(guān)系模式要滿(mǎn)足一定的條件,不同程度的條件稱(chēng)做不同的范式。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用89第1范式第1范式(1NF)——每個(gè)屬性值都是不可再分的最小數(shù)據(jù)單位。關(guān)系模式的最低要求的規(guī)則是元組的每個(gè)分量必須是不可分的數(shù)據(jù)項(xiàng),這叫做第1范式,簡(jiǎn)稱(chēng)1NF,是最基本的規(guī)范化。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用90第2范式第2范式(2NF)——非主屬性不部分依賴(lài)于關(guān)系的主鍵。在第1范式的基礎(chǔ)上進(jìn)一步增加一些規(guī)則,則為第2范式。其定義為:在第1范式基礎(chǔ)上,關(guān)系的每一個(gè)非主屬性完全依賴(lài)于主鍵。第2范式就是不允許關(guān)系模式的屬性之間有這樣的函數(shù)依賴(lài)X→Y,其中X是鍵的真子集,Y是非主屬性。即不允許有非主屬性對(duì)健的部分函數(shù)依賴(lài)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用91第3范式第3范式(3NF)——屬性不依賴(lài)于關(guān)系的非主屬性。在第2范式的基礎(chǔ)上,每一個(gè)非主屬性都不傳遞依賴(lài)于鍵,則為第3范式。第3范式就是不允許關(guān)系模式的屬性之間有這樣的非平凡函數(shù)依賴(lài)X→Y,其中X不包含鍵,Y是非主屬性。X不包含鍵有兩種情況,一種情況X是鍵的真子集,這是第2范式所不允許的,另一種情況X不是鍵的真子集,這是第3范式所不允許的。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用92BCNF范式Boyce-Codd(BCNF)范式——所有屬性都不傳遞依賴(lài)于關(guān)系的任何候選鍵。BCNF是3NF的進(jìn)一步規(guī)范化,即限制條件更嚴(yán)格。其定義為:如果關(guān)系模式的所有屬性都不傳遞依賴(lài)于關(guān)系的任何候選鍵,則稱(chēng)關(guān)系屬于BCNF范式。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用93數(shù)據(jù)庫(kù)存儲(chǔ)技術(shù)物理存儲(chǔ)介質(zhì)記錄的存儲(chǔ)結(jié)構(gòu)文件組織2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用94物理存儲(chǔ)介質(zhì)內(nèi)存一般不能用來(lái)存儲(chǔ)持久數(shù)據(jù);另外,內(nèi)存儲(chǔ)器存儲(chǔ)單位數(shù)據(jù)的成本要比輔助存儲(chǔ)器高得多。在當(dāng)前技術(shù)條件下,采用多級(jí)存儲(chǔ)器是不可避免的。目前,用得最多的輔助存儲(chǔ)器是磁盤(pán)。磁盤(pán)上的數(shù)據(jù)劃分為大小相等的物理塊。每個(gè)物理塊間須留有間隙,以便在磁盤(pán)初始化時(shí)寫(xiě)入控制信息,用以識(shí)別和選擇后續(xù)的物理塊。磁盤(pán)和內(nèi)存交換數(shù)據(jù)也是以物理塊為單位的,即每次訪(fǎng)問(wèn)磁盤(pán),至少存取一個(gè)物理塊。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用95記錄的物理表示定位法:每個(gè)字段按其最大可能長(zhǎng)度分配固定長(zhǎng)的位置,數(shù)據(jù)從左向右填入,多余的部分添以空格符。相對(duì)法:各個(gè)字段不是分配固定長(zhǎng)的空間,而是用特殊的字符分開(kāi),例如用?或%隔開(kāi)。用此法表示的記錄是變長(zhǎng)的。計(jì)數(shù)法:在每個(gè)字段的開(kāi)始,加上一個(gè)定長(zhǎng)的字段,表示該字段的長(zhǎng)度。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用96記錄的分配連續(xù)分配法:將一個(gè)文件的塊分配在磁盤(pán)的連續(xù)空間上,塊的次序也就是它們存儲(chǔ)的次序。鏈接分配法:物理塊不一定分配在磁盤(pán)上的連續(xù)區(qū)域,各物理塊用指針鏈接。聚簇(簇集)分配法:這是上面兩種方法的結(jié)合,把文件分為若干聚簇。所謂聚簇是物理上鄰接的若干物理塊,聚簇以指針鏈接。索引分配法:每個(gè)文件有一個(gè)邏輯塊號(hào)與其物理塊地址對(duì)照的索引。通過(guò)索引,可以查看文件中任一塊的地址。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用97數(shù)據(jù)壓縮技術(shù)消零或空格符法:數(shù)據(jù)中常常出現(xiàn)一串零或空格符,可用一個(gè)特殊符號(hào)和一個(gè)表示零或空格個(gè)數(shù)的數(shù)字表示。串型代替法:對(duì)于反復(fù)出現(xiàn)的字符串可用一個(gè)省略符代替,在轉(zhuǎn)換時(shí),須查串型表。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用98文件組織數(shù)據(jù)庫(kù)實(shí)現(xiàn)的基礎(chǔ)是文件,對(duì)數(shù)據(jù)庫(kù)的任何操作最終要轉(zhuǎn)化為對(duì)文件的操作。所以在數(shù)據(jù)庫(kù)物理組織中,基本的問(wèn)題是如何設(shè)計(jì)文件組織或者利用操作系統(tǒng)提供的基本的文件組織方法,即如何利用基本的文件組織方法來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)組織。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用99數(shù)據(jù)庫(kù)中需要存儲(chǔ)的信息①數(shù)據(jù)描述。即數(shù)據(jù)外模式、模式、內(nèi)模式。②數(shù)據(jù)本身。③數(shù)據(jù)之間的聯(lián)系。④存取路徑。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用100數(shù)據(jù)字典的組織數(shù)據(jù)字典的特點(diǎn)是數(shù)據(jù)量比較?。ㄅc數(shù)據(jù)本身比較)、使用頻繁,因?yàn)槿魏螖?shù)據(jù)庫(kù)操作都要參照數(shù)據(jù)字典的內(nèi)容。數(shù)據(jù)字典在網(wǎng)狀、層次數(shù)據(jù)庫(kù)中常常用一個(gè)特殊的文件來(lái)組織。數(shù)據(jù)字典按不同的內(nèi)容在邏輯上組織為若干張表,在物理上就對(duì)應(yīng)若干個(gè)文件而不是一個(gè)文件。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用101數(shù)據(jù)庫(kù)對(duì)文件的要求DBMS為了實(shí)現(xiàn)其功能,須在文件目錄、文件描述塊、物理塊等部分附加一些信息,而傳統(tǒng)的文件系統(tǒng)是不提供這些信息的。在數(shù)據(jù)庫(kù)系統(tǒng)中,往往要求即席訪(fǎng)問(wèn)、動(dòng)態(tài)修改。這就要求文件結(jié)構(gòu)能適應(yīng)數(shù)據(jù)的動(dòng)態(tài)變化,提供快速訪(fǎng)問(wèn)路徑。數(shù)據(jù)庫(kù)中的文件是供所有數(shù)據(jù)庫(kù)用戶(hù)共享的,甚至有些用途是不可預(yù)知的。如果采用操作系統(tǒng)的文件管理系統(tǒng)作為DBMS的物理層的實(shí)現(xiàn)基礎(chǔ),則DBMS對(duì)操作系統(tǒng)的依賴(lài)太大,不利于DBMS的移植。數(shù)據(jù)庫(kù)中文件的數(shù)據(jù)量變化較大,有些文件在數(shù)據(jù)模式剛定義時(shí)幾乎是個(gè)空架子,隨著應(yīng)用的開(kāi)展,數(shù)據(jù)不斷地消長(zhǎng)。數(shù)據(jù)庫(kù)中的文件結(jié)構(gòu)應(yīng)能適應(yīng)這樣的變化。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用102Theend2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用103第3章關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟數(shù)據(jù)庫(kù)應(yīng)用程序編制及調(diào)試數(shù)據(jù)庫(kù)的完整性數(shù)據(jù)庫(kù)的安全性2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用104數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟需求分析概念設(shè)計(jì)與E-R模型邏輯結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)物理設(shè)計(jì)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用105數(shù)據(jù)庫(kù)設(shè)計(jì)的特征反復(fù)性:數(shù)據(jù)庫(kù)設(shè)計(jì)需要反復(fù)推敲和修改才能完成。試探性:數(shù)據(jù)庫(kù)設(shè)計(jì)的結(jié)果一般不是惟一的,設(shè)計(jì)的過(guò)程往往是個(gè)試探的過(guò)程。分步進(jìn)行:數(shù)據(jù)庫(kù)設(shè)計(jì)常常由不同的人員分階段進(jìn)行。這樣做,一是由于技術(shù)上分工的需要,二是為了分段把關(guān),逐級(jí)審查,保證設(shè)計(jì)的質(zhì)量和進(jìn)度。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用106數(shù)據(jù)庫(kù)設(shè)計(jì)的基本過(guò)程2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用107數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程中需要注意的問(wèn)題(1)實(shí)現(xiàn)用戶(hù)所需要的功能(2)制作能重復(fù)使用的構(gòu)件(3)使用開(kāi)發(fā)管理工具(4)指定用戶(hù)組和權(quán)限(5)提供一致的用戶(hù)界面(6)在應(yīng)用系統(tǒng)中加入診斷功能2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用108需求分析需求分析人員既要對(duì)數(shù)據(jù)庫(kù)技術(shù)有一定的了解,又要對(duì)單位的情況比較熟悉,一般由數(shù)據(jù)庫(kù)技術(shù)人員和本單位的有關(guān)工作人員合作進(jìn)行。需求分析的結(jié)果整理成需求說(shuō)明,需求說(shuō)明是數(shù)據(jù)庫(kù)技術(shù)人員和應(yīng)用單位的工作人員取得共識(shí)的基礎(chǔ),必須得到單位的有關(guān)管理人員的確認(rèn)。進(jìn)行需求分析時(shí),要調(diào)查清楚用戶(hù)的實(shí)際要求,與用戶(hù)達(dá)成共識(shí),然后再分析與表達(dá)這些需求。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用109調(diào)查用戶(hù)需求的步驟①調(diào)查組織機(jī)構(gòu)情況。包括了解該組織的部門(mén)組成情況、各部門(mén)的職責(zé)等,為分析信息流程做準(zhǔn)備。②調(diào)查各部門(mén)的業(yè)務(wù)活動(dòng)情況。包括了解各個(gè)部門(mén)輸入和使用什么數(shù)據(jù),如何加工處理這些數(shù)據(jù),輸出什么信息,輸出到什么部門(mén),輸出結(jié)果的格式是什么,這是調(diào)查的重點(diǎn)。③明確對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的各項(xiàng)需求。在熟悉了業(yè)務(wù)活動(dòng)的基礎(chǔ)上,協(xié)助用戶(hù)明確對(duì)新系統(tǒng)的各種要求,包括信息要求、處理要求、完全性與完整性要求,這是調(diào)查的又一個(gè)重點(diǎn)。④確定新系統(tǒng)的邊界。對(duì)之前調(diào)查的結(jié)果進(jìn)行初步分析,確定哪些功能由計(jì)算機(jī)完成,哪些工作由人工完成。由計(jì)算機(jī)完成的功能就是新系統(tǒng)應(yīng)該實(shí)現(xiàn)的功能。

2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用110數(shù)據(jù)流圖數(shù)據(jù)流程是業(yè)務(wù)流程及業(yè)務(wù)中數(shù)據(jù)聯(lián)系的形式描述。數(shù)據(jù)流圖是從“數(shù)據(jù)”和“處理”兩方面表達(dá)數(shù)據(jù)處理過(guò)程的一種圖形化的表示方法。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用111數(shù)據(jù)字典數(shù)據(jù)字典是面向數(shù)據(jù)庫(kù)設(shè)計(jì)人員和用戶(hù)的,它是用DBMS或?qū)S密浖?shí)現(xiàn)的一個(gè)應(yīng)用系統(tǒng)。用數(shù)據(jù)字典管理元數(shù)據(jù),不但可以減少設(shè)計(jì)者的負(fù)擔(dān),也有利于保持?jǐn)?shù)據(jù)的一致性(如避免重復(fù)或重名)和提供各種統(tǒng)計(jì)數(shù)據(jù),因而可以提高數(shù)據(jù)庫(kù)設(shè)計(jì)的質(zhì)量。數(shù)據(jù)字典詳細(xì)描述系統(tǒng)中的全部數(shù)據(jù),它是系統(tǒng)中各類(lèi)數(shù)據(jù)描述的集合,是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要成果。數(shù)據(jù)字典通常包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和處理過(guò)程五個(gè)部分。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用112數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng)是不可再分的數(shù)據(jù)單位,對(duì)數(shù)據(jù)項(xiàng)的描述通常包括以下內(nèi)容:數(shù)據(jù)項(xiàng)名數(shù)據(jù)項(xiàng)含義說(shuō)明別名數(shù)據(jù)類(lèi)型長(zhǎng)度取值范圍取值含義與其他數(shù)據(jù)項(xiàng)的邏輯關(guān)系數(shù)據(jù)項(xiàng)之間的聯(lián)系2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用113數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)反映了數(shù)據(jù)之間的組合關(guān)系。一個(gè)數(shù)據(jù)結(jié)構(gòu)可以由若干個(gè)數(shù)據(jù)項(xiàng)組成,也可以由若干個(gè)數(shù)據(jù)結(jié)構(gòu)組成,或由若干個(gè)數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)混合組成。數(shù)據(jù)結(jié)構(gòu)通常由以下幾部分組成。數(shù)據(jù)結(jié)構(gòu)名含義說(shuō)明組成:{數(shù)據(jù)項(xiàng)或數(shù)據(jù)結(jié)構(gòu)}2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用114數(shù)據(jù)流數(shù)據(jù)流是數(shù)據(jù)結(jié)構(gòu)在系統(tǒng)內(nèi)傳輸?shù)穆窂?。?shù)據(jù)流包含以下各項(xiàng):數(shù)據(jù)流名說(shuō)明數(shù)據(jù)流來(lái)源(說(shuō)明該數(shù)據(jù)流來(lái)自哪個(gè)過(guò)程)數(shù)據(jù)流去向(說(shuō)明該數(shù)據(jù)流將到哪個(gè)過(guò)程去)組成:{數(shù)據(jù)結(jié)構(gòu)}平均流量(單位時(shí)間內(nèi)的傳輸次數(shù))高峰期流量(高峰時(shí)期的數(shù)據(jù)流量)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用115數(shù)據(jù)存儲(chǔ)數(shù)據(jù)存儲(chǔ)是數(shù)據(jù)結(jié)構(gòu)停留或保存的地方,也是數(shù)據(jù)流的來(lái)源和去向之一。對(duì)數(shù)據(jù)存儲(chǔ)的描述通常包括以下幾項(xiàng)。數(shù)據(jù)存儲(chǔ)名說(shuō)明編號(hào)輸入的數(shù)據(jù)流(說(shuō)明該數(shù)據(jù)流的來(lái)源)輸出的數(shù)據(jù)流(說(shuō)明該數(shù)據(jù)流的去向)組成:{數(shù)據(jù)結(jié)構(gòu)}數(shù)據(jù)量存取頻度(指單位時(shí)間內(nèi)存取幾次、每次存取多少數(shù)據(jù)等信息)存取方式(包括是批處理還是聯(lián)機(jī)處理,是檢索還是更新,是順序檢索還是隨機(jī)檢索等)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用116處理過(guò)程處理過(guò)程的具體處理邏輯一般用判定表或判定樹(shù)來(lái)描述。數(shù)據(jù)字典中只需要描述處理過(guò)程的說(shuō)明性信息,通常包括以下內(nèi)容。處理過(guò)程名說(shuō)明輸入:{數(shù)據(jù)流}輸出:{數(shù)據(jù)流}處理:{簡(jiǎn)要說(shuō)明}(主要說(shuō)明該處理過(guò)程的功能及處理要求)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用117概念設(shè)計(jì)與E-R模型概念模型不依賴(lài)于具體的計(jì)算機(jī)系統(tǒng),是純粹反映信息需求的概念結(jié)構(gòu)。在需求分析的基礎(chǔ)上,用概念數(shù)據(jù)模型,例如E-R數(shù)據(jù)模型,表示數(shù)據(jù)及其相互間的聯(lián)系。概念數(shù)據(jù)模型是面向現(xiàn)實(shí)世界的數(shù)據(jù)模型,因而也易于為用戶(hù)所理解。概念設(shè)計(jì)是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵,它通過(guò)對(duì)用戶(hù)需求進(jìn)行綜合、歸納與抽象,形成一個(gè)獨(dú)立于具體DBMS的概念模型。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用118概念模型的特性①有豐富的語(yǔ)義表達(dá)能力。能表達(dá)用戶(hù)的各種需求,包括描述現(xiàn)實(shí)世界中各種事物和事物之間的聯(lián)系,能滿(mǎn)足用戶(hù)對(duì)數(shù)據(jù)的處理要求。②易于交流和理解。概念模型是DBA、應(yīng)用系統(tǒng)開(kāi)發(fā)人員和用戶(hù)之間的主要交流工具。③易于變動(dòng)。概念模型要能靈活地加以改變,以反映用戶(hù)需求和環(huán)境的變化。④易于向各種數(shù)據(jù)模型轉(zhuǎn)換,易于從概念模型導(dǎo)出與DBMS有關(guān)的邏輯模型。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用119設(shè)計(jì)概念模型的策略①自頂向下。首先定義全局概念結(jié)構(gòu)的框架,再作逐步細(xì)化。②自底向上。首先定義每一局部應(yīng)用的概念結(jié)構(gòu),然后按一定的規(guī)則把它們集成,從而得到全局概念結(jié)構(gòu)。這也是最常用的一種策略。③由里向外。首先定義最重要的那些核心結(jié)構(gòu),再逐漸向外擴(kuò)充。④混合策略。把自頂向下和自底向上結(jié)合起來(lái)的方法。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用120概念模型的表示方法在概念模型的表示方法中,最常用的是P.P.S.Chen于1976年提出的實(shí)體-聯(lián)系方法(Entity-RelationshipApproach)。該方法是數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的一種簡(jiǎn)明扼要的方法,也稱(chēng)為E-R模型。E-R圖提供了表示實(shí)體型、屬性和聯(lián)系的方法。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用121采用E-R方法的概念模型設(shè)計(jì)設(shè)計(jì)局部概念模型設(shè)計(jì)全局概念模型概念模型的優(yōu)化與評(píng)審2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用122設(shè)計(jì)局部概念模型①確定局部概念模型的范圍。以用戶(hù)為起點(diǎn),在需求分析結(jié)果的基礎(chǔ)上劃分局部結(jié)構(gòu)范圍。②定義實(shí)體。確定每個(gè)實(shí)體類(lèi)型的屬性和鍵。注意,實(shí)體、屬性和聯(lián)系事實(shí)上并沒(méi)有標(biāo)準(zhǔn)可以從形式上截然區(qū)分。③定義聯(lián)系。防止并且消除冗余的聯(lián)系,對(duì)聯(lián)系命名和確定鍵。④確定屬性。確定屬性的原則是:屬性是不可再分解的語(yǔ)義單位,實(shí)體與屬性間應(yīng)是1:n的關(guān)聯(lián),隸屬不同實(shí)體型的屬性間無(wú)直接關(guān)聯(lián),不宜隸屬任一實(shí)體型的屬性應(yīng)作為聯(lián)系的屬性。⑤逐一畫(huà)出所有的局部E-R圖,附以相應(yīng)的說(shuō)明文件。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用123設(shè)計(jì)全局概念模型確定公共實(shí)體類(lèi)型。檢查存在于多個(gè)局部E-R圖的公共實(shí)體類(lèi)型。合并局部E-R圖。把局部E-R圖逐一合并到全局E-R圖中,對(duì)每個(gè)局部E-R圖,首先合并公共實(shí)體類(lèi)型,其次合并那些有聯(lián)系的局部結(jié)構(gòu),最后加入其他獨(dú)立的局部結(jié)構(gòu)。消除不一致因素。局部E-R圖間存在的不一致又稱(chēng)沖突。通常有以下幾種沖突。命名沖突屬性沖突結(jié)構(gòu)沖突優(yōu)化全局E-R圖。經(jīng)合并得到的全局E-R圖需要進(jìn)行優(yōu)化。畫(huà)出全局E-R圖,附以相應(yīng)的說(shuō)明文件。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用124概念模型的優(yōu)化與評(píng)審優(yōu)化目標(biāo)實(shí)體類(lèi)型個(gè)數(shù)盡可能少;實(shí)體類(lèi)型所含屬性盡可能少;實(shí)體類(lèi)型間聯(lián)系無(wú)冗余。評(píng)審步驟用戶(hù)評(píng)審開(kāi)發(fā)人員評(píng)審2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用125邏輯結(jié)構(gòu)設(shè)計(jì)在邏輯設(shè)計(jì)階段,將概念設(shè)計(jì)階段所得到的以概念數(shù)據(jù)模型表示、與DBMS無(wú)關(guān)的數(shù)據(jù)模式,轉(zhuǎn)換成以DBMS的邏輯數(shù)據(jù)模型表示的邏輯(概念)模式,并對(duì)其進(jìn)行優(yōu)化。數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)也不簡(jiǎn)單是個(gè)數(shù)據(jù)模型的轉(zhuǎn)換問(wèn)題,而是進(jìn)一步深入解決數(shù)據(jù)模式設(shè)計(jì)中的一些技術(shù)問(wèn)題,例如數(shù)據(jù)模式的規(guī)范化、滿(mǎn)足DBMS的各種限制等。數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的結(jié)果以數(shù)據(jù)定義語(yǔ)言(DDL)表示。除數(shù)據(jù)庫(kù)的邏輯模式外,還得為各類(lèi)用戶(hù)或應(yīng)用設(shè)計(jì)其各自的邏輯模式,即外模式。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用126E-R模型向關(guān)系數(shù)據(jù)模型的轉(zhuǎn)換一個(gè)實(shí)體類(lèi)型轉(zhuǎn)換成一個(gè)關(guān)系模式,實(shí)體的屬性就是關(guān)系的屬性,實(shí)體的鍵就是關(guān)系的鍵。一個(gè)1:1聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與聯(lián)系的任意一端實(shí)體所對(duì)應(yīng)的關(guān)系模式合并。一個(gè)1:n聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與聯(lián)系的任意n端實(shí)體所對(duì)應(yīng)的關(guān)系模式合并。一個(gè)m:n聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式。與該聯(lián)系相連的各實(shí)體的鍵以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的鍵為各實(shí)體鍵的組合。三個(gè)或三個(gè)以上的實(shí)體間的多元聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式。具有相同鍵的關(guān)系模式可以合并。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用127關(guān)系數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)過(guò)程①?gòu)腅-R圖導(dǎo)出初始關(guān)系模式。將E-R圖按規(guī)則轉(zhuǎn)換成關(guān)系模式。②規(guī)范化處理。消除異常,改善完善性、一致性和存儲(chǔ)效率,一般達(dá)到第三范式要求即可。③模式評(píng)價(jià)。模式評(píng)價(jià)的目的是檢查數(shù)據(jù)庫(kù)模式是否滿(mǎn)足用戶(hù)的要求,包括功能評(píng)價(jià)和性能評(píng)價(jià)。④優(yōu)化模式。優(yōu)化包括對(duì)于設(shè)計(jì)過(guò)程中疏漏的要新增關(guān)系或?qū)傩?,性能不好的要采用合并、分解或選用另外結(jié)構(gòu)等工作。⑤形成邏輯結(jié)構(gòu)設(shè)計(jì)說(shuō)明書(shū)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用128邏輯結(jié)構(gòu)設(shè)計(jì)說(shuō)明書(shū)應(yīng)用設(shè)計(jì)指南:包括訪(fǎng)問(wèn)方式、查詢(xún)路徑、處理要求、約束條件等。物理設(shè)計(jì)指南:包括數(shù)據(jù)訪(fǎng)問(wèn)量、傳輸量、存儲(chǔ)量、遞增量等。模式及子模式的集合:該部分可用DBMS語(yǔ)言描述,也可列表描述。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用129外模式的設(shè)計(jì)外模式是用戶(hù)所看到的數(shù)據(jù)模式,各類(lèi)用戶(hù)有各自的外模式。外模式不簡(jiǎn)單地是邏輯模式的子集,雖然它來(lái)自邏輯模式,但在結(jié)構(gòu)和形式上可以不同于邏輯模式。外模式的主要作用如下:提供一定的邏輯數(shù)據(jù)獨(dú)立性;更好地適應(yīng)不同用戶(hù)對(duì)數(shù)據(jù)的需求有利于數(shù)據(jù)保密2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用130數(shù)據(jù)庫(kù)物理設(shè)計(jì)①確定數(shù)據(jù)庫(kù)的物理結(jié)構(gòu),在關(guān)系數(shù)據(jù)庫(kù)中主要指存取方法和存儲(chǔ)結(jié)構(gòu)。②對(duì)物理結(jié)構(gòu)進(jìn)行評(píng)價(jià),評(píng)價(jià)的重點(diǎn)是時(shí)間和空間效率。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用131關(guān)系模式的存取方法存取方法是快速存取數(shù)據(jù)庫(kù)中數(shù)據(jù)的技術(shù)。數(shù)據(jù)庫(kù)管理系統(tǒng)一般都提供許多種存取方法。常用的存取方法有三類(lèi):索引方法聚簇方法分區(qū)設(shè)計(jì)方法。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用132不適宜建立索引的條件不出現(xiàn)或很少出現(xiàn)在查詢(xún)條件中的屬性。屬性值很少的屬性。屬性值分布嚴(yán)重不均勻的屬性。經(jīng)常更新的屬性或表。因?yàn)楦聲r(shí)索引需要維護(hù)。過(guò)長(zhǎng)的屬性,例如超過(guò)30個(gè)字節(jié)。因?yàn)樵谶^(guò)長(zhǎng)的屬性上建立索引,索引所占的存儲(chǔ)空間較大,而且索引級(jí)數(shù)也隨之增加,有諸多不利之處。太小的表,例如小于六個(gè)物理塊的表。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用133適宜建立索引的條件如果一個(gè)(或一組)屬性經(jīng)常在查詢(xún)條件中出現(xiàn),則考慮在這個(gè)(或這組)屬性上建立索引(或組合索引)。如果一個(gè)屬性經(jīng)常作為最大值和最小值等聚集函數(shù)的參數(shù),則考慮在這個(gè)屬性上建立索引。如果一個(gè)(或一組)屬性經(jīng)常在連接操作的連接條件中出現(xiàn),則考慮在這個(gè)(或這組)屬性上建立索引。對(duì)于以讀為主或只讀的表,只要需要,且存儲(chǔ)空間允許,可以多建索引。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用134聚簇存取方法聚簇就是把有關(guān)的元組集中在一個(gè)物理塊內(nèi)或物理上相鄰的區(qū)域內(nèi),以提高某些數(shù)據(jù)訪(fǎng)問(wèn)的速度。具有同一聚簇鍵值的元組,盡可能放在同一個(gè)物理塊中。如果放不下,可以向預(yù)留的空白區(qū)發(fā)展,或鏈接多個(gè)物理塊。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用135適宜建立聚簇的情況通過(guò)聚簇鍵進(jìn)行訪(fǎng)問(wèn)或連接是該表的主要應(yīng)用,與聚簇鍵無(wú)關(guān)的其他訪(fǎng)問(wèn)很少,或是次要的。對(duì)應(yīng)每個(gè)聚簇鍵值的平均元組數(shù)既不太少,也不太多。聚簇鍵的值應(yīng)相對(duì)穩(wěn)定,以減少修改聚簇鍵所引起的維護(hù)開(kāi)銷(xiāo)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用136分區(qū)設(shè)計(jì)方法數(shù)據(jù)庫(kù)系統(tǒng)一般有多個(gè)磁盤(pán)驅(qū)動(dòng)器,有些系統(tǒng)還帶有磁盤(pán)陣列。數(shù)據(jù)在多個(gè)磁盤(pán)組上的分布也是數(shù)據(jù)庫(kù)物理設(shè)計(jì)的內(nèi)容之一,這就是分區(qū)設(shè)計(jì)方法。分區(qū)設(shè)計(jì)的原則如下:減少訪(fǎng)盤(pán)沖突,提高I/O的并行性。分散熱點(diǎn)數(shù)據(jù),均衡I/O負(fù)荷。保證關(guān)鍵數(shù)據(jù)的快速訪(fǎng)問(wèn),緩解系統(tǒng)的瓶頸。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用137數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)確定數(shù)據(jù)庫(kù)物理結(jié)構(gòu)主要指確定數(shù)據(jù)的存放位置和存儲(chǔ)結(jié)構(gòu),包括確定關(guān)系、索引、聚簇、日志、備份等的存儲(chǔ)安排和存儲(chǔ)結(jié)構(gòu),確定系統(tǒng)配置等。確定數(shù)據(jù)的存放位置和存儲(chǔ)結(jié)構(gòu)要綜合考慮存取時(shí)間、存儲(chǔ)空間利用率和維護(hù)代價(jià)三方面的因素。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用138數(shù)據(jù)庫(kù)應(yīng)用程序編制及調(diào)試在程序編制中,最基本的是使用DBMS提供的數(shù)據(jù)語(yǔ)言,對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行定義、檢索、更新和實(shí)施各種控制。程序模塊代碼通常先在模擬的環(huán)境下通過(guò)初步調(diào)試,然后進(jìn)行聯(lián)合調(diào)試。聯(lián)合調(diào)試的工作主要有以下三點(diǎn):建立數(shù)據(jù)庫(kù)結(jié)構(gòu)調(diào)試運(yùn)行裝入實(shí)際的初始數(shù)據(jù)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用139運(yùn)行前的準(zhǔn)備(1)制定數(shù)據(jù)庫(kù)重新組織的可行方案(2)制定故障恢復(fù)規(guī)范(3)制定系統(tǒng)的安全規(guī)范(4)制定事務(wù)控制方案2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用140運(yùn)行與維護(hù)(1)維護(hù)數(shù)據(jù)庫(kù)的安全性和完整性(2)監(jiān)察系統(tǒng)的性能(3)擴(kuò)充系統(tǒng)的功能2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用141數(shù)據(jù)庫(kù)的完整性完整性約束的類(lèi)型完整性約束的表達(dá)與控制完整性約束的實(shí)施2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用142數(shù)據(jù)庫(kù)的完整性數(shù)據(jù)庫(kù)的完整性是指數(shù)據(jù)的正確性和相容性。為維護(hù)數(shù)據(jù)庫(kù)的完整性,DBMS必須提供一種機(jī)制來(lái)檢查數(shù)據(jù)庫(kù)中的數(shù)據(jù),看其是否滿(mǎn)足語(yǔ)義規(guī)定的條件。這些加在數(shù)據(jù)庫(kù)數(shù)據(jù)之上的語(yǔ)義約束條件稱(chēng)為數(shù)據(jù)庫(kù)完整性約束條件,它們作為模式的一部分存入數(shù)據(jù)庫(kù)中。而DBMS中檢查數(shù)據(jù)是否滿(mǎn)足完整性條件的機(jī)制稱(chēng)為完整性檢查。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用143關(guān)系數(shù)據(jù)模型的完整性約束分類(lèi)靜態(tài)約束:靜態(tài)約束是指數(shù)據(jù)庫(kù)每一確定狀態(tài)時(shí)的數(shù)據(jù)對(duì)象所應(yīng)滿(mǎn)足的約束條件,它是反映數(shù)據(jù)庫(kù)狀態(tài)合理性的約束,這是最重要的一類(lèi)完整性約束。動(dòng)態(tài)約束:動(dòng)態(tài)約束是指數(shù)據(jù)庫(kù)從一種狀態(tài)轉(zhuǎn)變?yōu)榱硪环N狀態(tài)時(shí),新、舊值之間所應(yīng)滿(mǎn)足的約束條件,它是反映數(shù)據(jù)庫(kù)狀態(tài)變遷的約束。列級(jí)約束元組約束關(guān)系約束2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用144關(guān)系約束在一個(gè)關(guān)系的各個(gè)元組之間或者若干個(gè)關(guān)系之間常常存在各種聯(lián)系或約束。常見(jiàn)的靜態(tài)關(guān)系約束有:實(shí)體完整性約束。參照完整性約束。函數(shù)依賴(lài)約束。統(tǒng)計(jì)約束。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用145完整性約束的表達(dá)一個(gè)完整性規(guī)則可以用一個(gè)五元組(D,O,A,C,P)來(lái)表示,其中:

D(Data)是約束作用的數(shù)據(jù)對(duì)象;

O(Operation)指觸發(fā)完整性檢查的數(shù)據(jù)庫(kù)操作;

A(Assertion)是數(shù)據(jù)對(duì)象必須滿(mǎn)足的斷言或語(yǔ)義約束;

C(Condition)指選擇A作用的數(shù)據(jù)對(duì)象值的謂詞;

P(Procedure)指違反完整性規(guī)則時(shí)觸發(fā)的過(guò)程。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用146完整性約束的控制定義功能,提供定義完整性約束條件的機(jī)制。檢查功能,檢查用戶(hù)發(fā)出的操作請(qǐng)求是否違背了完整性約束條件。如果發(fā)現(xiàn)用戶(hù)的操作請(qǐng)求使數(shù)據(jù)違背了完整性約束條件,則采取一定的動(dòng)作來(lái)保證數(shù)據(jù)的完整性。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用147完整性約束的實(shí)施因?yàn)橥暾约s束的檢驗(yàn)是伴隨數(shù)據(jù)庫(kù)更新操作進(jìn)行的,對(duì)數(shù)據(jù)庫(kù)的更新操作性能影響頗大。目前域完整性約束在一般DBMS中都已經(jīng)實(shí)施;實(shí)體完整性約束在大部分關(guān)系DBMS中都已基本實(shí)施;引用完整性約束在部分關(guān)系DBMS中已經(jīng)實(shí)施;顯式完整性約束在商品化的DBMS中實(shí)施的也逐步增多。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用148數(shù)據(jù)庫(kù)的安全性數(shù)據(jù)庫(kù)安全性措施的層次數(shù)據(jù)庫(kù)的安全機(jī)制數(shù)據(jù)加密與跟蹤審查2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用149數(shù)據(jù)庫(kù)的安全問(wèn)題數(shù)據(jù)庫(kù)的安全性是指保護(hù)數(shù)據(jù)庫(kù)以防止不合法的使用,避免數(shù)據(jù)的泄露、更改和破壞。它往往和保密性連在一起。安全性包括許多方面的問(wèn)題:如法律、社會(huì)和政策方面,物理控制技術(shù)、運(yùn)行、硬件控制、操作系統(tǒng)的安全性以及數(shù)據(jù)庫(kù)本身的安全性等方面。從數(shù)據(jù)庫(kù)角度來(lái)看,安全性分系統(tǒng)安全性和自然安全性?xún)深?lèi)。為實(shí)現(xiàn)系統(tǒng)安全性所采取的措施有用戶(hù)標(biāo)識(shí)和鑒定、授權(quán)規(guī)則、數(shù)據(jù)分級(jí)和數(shù)據(jù)加密等措施。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用150數(shù)據(jù)庫(kù)安全性措施的層次①未經(jīng)授權(quán)讀取數(shù)據(jù)(竊取信息);②未經(jīng)授權(quán)修改數(shù)據(jù);③未經(jīng)授權(quán)消除數(shù)據(jù)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用151數(shù)據(jù)庫(kù)保護(hù)的安全性措施①物理層。計(jì)算機(jī)系統(tǒng)所位于的節(jié)點(diǎn)必須在物理上受到保護(hù),以防止入侵者強(qiáng)行闖入或暗中潛入。②人員層。對(duì)用戶(hù)的授權(quán)必須格外小心,以減少授權(quán)用戶(hù)接受賄賂或其他好處而給入侵者提供訪(fǎng)問(wèn)機(jī)會(huì)的可能性。③操作系統(tǒng)層。不管數(shù)據(jù)庫(kù)系統(tǒng)多安全,操作系統(tǒng)安全性方面的弱點(diǎn)總是可能成為對(duì)數(shù)據(jù)庫(kù)進(jìn)行未授權(quán)訪(fǎng)問(wèn)的一種手段。④網(wǎng)絡(luò)層。由于幾乎所有的數(shù)據(jù)庫(kù)系統(tǒng)都允許通過(guò)終端或網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程訪(fǎng)問(wèn),網(wǎng)絡(luò)軟件的軟件層安全性和物理安全性一樣重要。⑤數(shù)據(jù)庫(kù)系統(tǒng)層。數(shù)據(jù)庫(kù)系統(tǒng)的某些用戶(hù)獲得的授權(quán)可能只允許他訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)中有限的部分。而另外一些用戶(hù)獲得的授權(quán)可能允許他提出查詢(xún),但不允許他修改數(shù)據(jù)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用152數(shù)據(jù)庫(kù)的安全機(jī)制在計(jì)算機(jī)系統(tǒng)中,安全措施是一級(jí)一級(jí)層層設(shè)置的。安全控制模型如下:2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用153用戶(hù)標(biāo)識(shí)和鑒定用戶(hù)標(biāo)識(shí)一般包括用戶(hù)名和口令兩部分。系統(tǒng)有一張用戶(hù)口令表,為每個(gè)用戶(hù)保持一個(gè)記錄,包括用戶(hù)名和口令兩部分?jǐn)?shù)據(jù)。用戶(hù)先輸入用戶(hù)名,然后系統(tǒng)要求用戶(hù)輸入口令。為了保密,用戶(hù)在終端上輸入的口令不顯示在屏幕上。系統(tǒng)核對(duì)口令以鑒別用戶(hù)身份。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用154數(shù)據(jù)庫(kù)的授權(quán)與權(quán)限控制數(shù)據(jù)庫(kù)用戶(hù)可以分成三類(lèi):一般數(shù)據(jù)庫(kù)用戶(hù)。具有支配部分?jǐn)?shù)據(jù)庫(kù)資源特權(quán)的數(shù)據(jù)庫(kù)用戶(hù)。具有DBA特權(quán)的數(shù)據(jù)庫(kù)用戶(hù)。對(duì)數(shù)據(jù)庫(kù)的操作類(lèi)型規(guī)定如下:一般數(shù)據(jù)庫(kù)都有子模式一級(jí),一個(gè)用戶(hù)只能跟自己有關(guān)的子模式所描述的數(shù)據(jù)打交道,只能存取跟自己有關(guān)的子模式中所描述的數(shù)據(jù)。還要規(guī)定允許操作的類(lèi)型。對(duì)自己子模式中定義的數(shù)據(jù),還要按照規(guī)定的操作類(lèi)型進(jìn)行操作。還可以規(guī)定數(shù)據(jù)項(xiàng)值的存取限制,只允許某用戶(hù)存取某一范圍的值。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用155DBA的特權(quán)有權(quán)訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)中的任何數(shù)據(jù);不但可以授予或收回?cái)?shù)據(jù)庫(kù)用戶(hù)對(duì)數(shù)據(jù)對(duì)象的訪(fǎng)問(wèn)權(quán),還可以批準(zhǔn)或收回?cái)?shù)據(jù)庫(kù)用戶(hù);可以為所有數(shù)據(jù)庫(kù)用戶(hù)定義別名;有權(quán)對(duì)數(shù)據(jù)庫(kù)進(jìn)行調(diào)整、重組或重構(gòu);有權(quán)控制整個(gè)數(shù)據(jù)庫(kù)的跟蹤審查。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用156數(shù)據(jù)加密加密數(shù)據(jù)是不可能被讀出的,除非讀數(shù)據(jù)的人知道如何對(duì)加密數(shù)據(jù)進(jìn)行解密。在數(shù)據(jù)庫(kù)中,為了更好地保證數(shù)據(jù)的安全性,用密碼存儲(chǔ)口令、數(shù)據(jù),對(duì)遠(yuǎn)程終端信息用密碼傳輸防止中途非法截獲等。把原始數(shù)據(jù)稱(chēng)為源文,用加密算法對(duì)源文進(jìn)行加密。加密算法的輸入是源文和密鑰,輸出是密文。加密算法可以公開(kāi),但密鑰一定是要保密的。加密數(shù)據(jù)的技術(shù)數(shù)不勝數(shù)。但是,數(shù)據(jù)加密也不是絕對(duì)安全的,也有可能被解密。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用157好的加密技術(shù)具有如下性質(zhì)對(duì)授權(quán)用戶(hù)來(lái)說(shuō),加密數(shù)據(jù)和解密數(shù)據(jù)相對(duì)簡(jiǎn)單。加密模式不應(yīng)依賴(lài)于算法的保密,而是依賴(lài)于密鑰的算法參數(shù)。對(duì)入侵者來(lái)說(shuō),確定密鑰是極其困難的。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用158跟蹤審查跟蹤審查是一種監(jiān)視措施,它對(duì)某些保密數(shù)據(jù),跟蹤記錄有關(guān)這些數(shù)據(jù)的訪(fǎng)問(wèn)活動(dòng)。跟蹤審查記錄一般包括下列內(nèi)容:操作類(lèi)型(修改、查詢(xún)等);操作終端標(biāo)識(shí)與操作者標(biāo)識(shí);操作日期和時(shí)間;所涉及到的數(shù)據(jù)(表、視圖、記錄、屬性等);數(shù)據(jù)的前像和后像。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用159Theend2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用160第4章Access2003概述Access2003系統(tǒng)簡(jiǎn)介建立Access數(shù)據(jù)庫(kù)創(chuàng)建數(shù)據(jù)表使用Access2003開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)時(shí)的技巧Access2003的安全機(jī)制2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用161Access2003系統(tǒng)簡(jiǎn)介Access的發(fā)展歷程Access2003數(shù)據(jù)庫(kù)開(kāi)發(fā)環(huán)境Access2003的數(shù)據(jù)對(duì)象與數(shù)據(jù)類(lèi)型Access2003的功能VBA的開(kāi)發(fā)環(huán)境2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用162Access啟動(dòng)后可以做下列工作從可任意使用區(qū)開(kāi)始或利用數(shù)據(jù)庫(kù)向?qū)蓴?shù)據(jù)庫(kù);生成數(shù)據(jù)訪(fǎng)問(wèn)頁(yè)面,以便在InternetExplorer中瀏覽Access數(shù)據(jù);生成Access項(xiàng)目;打開(kāi)已經(jīng)建立的數(shù)據(jù)庫(kù)或項(xiàng)目。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用163Access2003的主窗口2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用164Access2003主窗口的組成部分標(biāo)題欄和任務(wù)欄:Access2003主窗口的上邊是窗口的標(biāo)題欄,下邊是任務(wù)欄,其結(jié)構(gòu)、功能以及使用方法與一般Windows應(yīng)用程序窗口的標(biāo)題欄和任務(wù)欄相同。菜單欄:?jiǎn)螕裘恳粋€(gè)菜單項(xiàng)都會(huì)激活一個(gè)下拉菜單,列出有關(guān)此項(xiàng)功能的具體操作命令選項(xiàng)。工具欄:工具欄顯示的是最常用的Access2003命令按鈕,用以快速啟動(dòng)這些應(yīng)用。工作區(qū):工作區(qū)位于主窗口的左側(cè),用于顯示開(kāi)發(fā)和維護(hù)Access2003數(shù)據(jù)庫(kù)時(shí)的各種子窗口或?qū)υ?huà)框。任務(wù)窗格:任務(wù)窗格是MicrosoftOfficeXP以后的版本才為所有應(yīng)用程序提供的新功能格式。在任務(wù)窗格中提供多項(xiàng)常用操作選項(xiàng),每一個(gè)選項(xiàng)區(qū)域中又包括一組操作命令,使用起來(lái)更方便。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用165Access2003的工具欄2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用166“自定義”工具欄對(duì)話(huà)框2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用167Access2003的數(shù)據(jù)對(duì)象Access2003包括數(shù)據(jù)表、查詢(xún)、窗體等八種基本的數(shù)據(jù)對(duì)象,每一個(gè)Access2003數(shù)據(jù)庫(kù)文件實(shí)際上包含了一個(gè)或多個(gè)數(shù)據(jù)表以及多種其他數(shù)據(jù)對(duì)象。數(shù)據(jù)的管理和應(yīng)用主要是通過(guò)這些對(duì)象完成的。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用168Access數(shù)據(jù)庫(kù)對(duì)象欄2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用169數(shù)據(jù)庫(kù)在使用Access2003管理數(shù)據(jù)時(shí)首先要建立相關(guān)的數(shù)據(jù)庫(kù),然后創(chuàng)建和使用數(shù)據(jù)庫(kù)的各種對(duì)象。Access2003允許管理多個(gè)數(shù)據(jù)庫(kù),實(shí)現(xiàn)多個(gè)數(shù)據(jù)庫(kù)之間的數(shù)據(jù)操作。Access2003數(shù)據(jù)庫(kù)文件的擴(kuò)展名是.mdb。在這里可將數(shù)據(jù)庫(kù)看作是一種特殊的對(duì)象,它是其他多種對(duì)象的容器。一個(gè)數(shù)據(jù)庫(kù)對(duì)象可以包含多種數(shù)據(jù)對(duì)象。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用170表表是數(shù)據(jù)庫(kù)最基本和核心的組件,是Access2003實(shí)際存儲(chǔ)數(shù)據(jù)的場(chǎng)所。一個(gè)Access2003數(shù)據(jù)庫(kù)可以包含一個(gè)或互相相關(guān)的多個(gè)表。創(chuàng)建和管理數(shù)據(jù)庫(kù)的主要工作之一就是創(chuàng)建和管理所需要的表,以便存放數(shù)據(jù)。每個(gè)表包含若干記錄,每一條記錄又包含若干字段。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用171“家庭成員”表數(shù)據(jù)表視圖2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用172查詢(xún)查詢(xún)是一般用戶(hù)使用數(shù)據(jù)庫(kù)的最常用方式。在查詢(xún)時(shí),要根據(jù)查詢(xún)條件創(chuàng)建查詢(xún)。查詢(xún)中數(shù)據(jù)可以來(lái)自一個(gè)表,也可以來(lái)自數(shù)據(jù)庫(kù)中的多個(gè)表,甚至來(lái)自多個(gè)數(shù)據(jù)庫(kù)中的不同表。查詢(xún)建立以后,如果數(shù)據(jù)庫(kù)中的數(shù)據(jù)發(fā)生變化,用戶(hù)看到的查詢(xún)視圖中的數(shù)據(jù)也同步改變。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用173窗體窗體是在數(shù)據(jù)庫(kù)操作和應(yīng)用中用戶(hù)和數(shù)據(jù)庫(kù)的交互式圖形界面,用于顯示包含在表或查詢(xún)中的數(shù)據(jù)和操作數(shù)據(jù)庫(kù)中的數(shù)據(jù)。Access2003提供了便捷的窗體設(shè)計(jì)工具,用戶(hù)可以根據(jù)自己的習(xí)慣設(shè)計(jì)數(shù)據(jù)輸入和輸出的窗口界面,還可以在窗體中以圖形的方式顯示數(shù)據(jù)庫(kù)中的數(shù)據(jù)。通過(guò)窗體用戶(hù)可以查看、錄入、刪除或更新數(shù)據(jù)等。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用174地址簿示例數(shù)據(jù)庫(kù)的查詢(xún)窗體2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用175報(bào)表報(bào)表的主要功能是將所需要的數(shù)據(jù)以確定的版式顯示或打印。Access2003提供了常用報(bào)表的設(shè)計(jì)工具和數(shù)據(jù)選擇方法。報(bào)表還具有數(shù)據(jù)的求和、求平均值等常用的數(shù)值計(jì)算處理功能,還可以在報(bào)表中以圖形方式顯示數(shù)據(jù)結(jié)果。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用176網(wǎng)頁(yè)網(wǎng)頁(yè)是自Access2000之后新增加的對(duì)象,也稱(chēng)為數(shù)據(jù)訪(fǎng)問(wèn)頁(yè)或簡(jiǎn)單稱(chēng)為頁(yè),其功能是實(shí)現(xiàn)數(shù)據(jù)通過(guò)互聯(lián)網(wǎng)輸入、輸出和查詢(xún)等,使Access具有網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的功能。Access2003提供了簡(jiǎn)單的網(wǎng)頁(yè)設(shè)計(jì)工具,可以快速設(shè)計(jì)數(shù)據(jù)庫(kù)數(shù)據(jù)發(fā)布網(wǎng)頁(yè),并自動(dòng)實(shí)現(xiàn)數(shù)據(jù)庫(kù)和網(wǎng)頁(yè)的鏈接。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用177宏宏是數(shù)據(jù)庫(kù)操作指令的集合,以實(shí)現(xiàn)自動(dòng)執(zhí)行重復(fù)性工作的功能。使用宏可以簡(jiǎn)化一些經(jīng)常性的操作。Access2003提供了幾十種宏指令,用戶(hù)可以很方便地組合這些指令,以便完成一些復(fù)雜的數(shù)據(jù)操作。宏常與窗體配合使用。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用178模塊模塊是使用Access2003提供的VBA語(yǔ)言編寫(xiě)的程序段,以便完成更復(fù)雜的數(shù)據(jù)庫(kù)操作和控制流程。VBA以VisualBasic為內(nèi)置的數(shù)據(jù)庫(kù)程序語(yǔ)言,對(duì)于數(shù)據(jù)庫(kù)一些較為復(fù)雜或高級(jí)的應(yīng)用功能,需要使用VBA代碼編程實(shí)現(xiàn)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用179Access2003對(duì)象及其關(guān)系2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用180Access2003的數(shù)據(jù)庫(kù)操作環(huán)境數(shù)據(jù)庫(kù)窗口:在創(chuàng)建或打開(kāi)Access2003數(shù)據(jù)庫(kù)后,所有的數(shù)據(jù)庫(kù)操作都是圍繞數(shù)據(jù)庫(kù)窗口進(jìn)行的,數(shù)據(jù)庫(kù)窗口由對(duì)象選項(xiàng)卡、對(duì)象列表和工具欄組成。組:除了標(biāo)準(zhǔn)的7種對(duì)象外,Access2003還允許根據(jù)用戶(hù)需求創(chuàng)建新組,以便擺放數(shù)據(jù)庫(kù)中常用對(duì)象的快捷方式。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用181“新建組”對(duì)話(huà)框2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用182Access2003的數(shù)據(jù)類(lèi)型文本:由字符串或數(shù)字組成,最多255個(gè)字符長(zhǎng)度,默認(rèn)為50個(gè)字符。數(shù)字:用于將要進(jìn)行算術(shù)運(yùn)算的數(shù)據(jù),包括字節(jié)、整型、長(zhǎng)整型、單精度型、雙精度型、同步復(fù)制ID和小數(shù)等七種。即可以存儲(chǔ)1、2、4或8個(gè)字節(jié)長(zhǎng)度的數(shù)值數(shù)據(jù)。日期:用于存儲(chǔ)日期和時(shí)間,具體格式包括長(zhǎng)日期和短日期等多種,可以通過(guò)屬性設(shè)置。字段的長(zhǎng)度取決于選擇的格式。備注:用于長(zhǎng)文本和數(shù)字,例如注釋、摘要或說(shuō)明,文本長(zhǎng)度最多65536個(gè)字符。邏輯型數(shù)據(jù):用于只有兩個(gè)值中的一個(gè)(如是/否、真/假、開(kāi)/關(guān)、男/女等)的數(shù)據(jù),不允許為空(Null)。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用183Access2003的數(shù)據(jù)類(lèi)型貨幣:用于存儲(chǔ)貨幣數(shù)值,例如工資、單價(jià)等。自動(dòng)編號(hào):用于表示記錄序號(hào)的字段,在添加記錄時(shí)自動(dòng)插入唯一順序號(hào)(每次遞增1)或隨機(jī)編號(hào)。OLE:OLE表示對(duì)象的鏈接和嵌人,這是一種比較特殊的數(shù)據(jù)類(lèi)型。此數(shù)據(jù)類(lèi)型表示使用OLE協(xié)議在其他程序中創(chuàng)建的多媒體對(duì)象,例如Word文檔和Excel電子表格等。超鏈接:用于實(shí)現(xiàn)超鏈接,可以是某個(gè)UNC路徑或URL,最多存儲(chǔ)64K個(gè)字符。查閱向?qū)В河糜趧?chuàng)建這樣的字段,它允許用戶(hù)使用組合框選擇來(lái)自其他表或來(lái)自值列表的值。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用184Access2003的功能1.查看相關(guān)信息2.窗體和報(bào)表中的錯(cuò)誤檢查3.傳播字段屬性4.智能標(biāo)記5.備份數(shù)據(jù)庫(kù)或項(xiàng)目6.WindowsXP主題支持7.控件增強(qiáng)的排序功能8.自動(dòng)更正選項(xiàng)9.SQL視圖中的增強(qiáng)字體功能和基于上下文的幫助10.XML支持11.安全性增強(qiáng)2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用185VBA的開(kāi)發(fā)環(huán)境VBA(VisualBasicforApplications)是VB在MicrosoftOffice及其他軟件中的應(yīng)用程序,具有高級(jí)程序設(shè)計(jì)語(yǔ)言的語(yǔ)句結(jié)構(gòu),簡(jiǎn)單易用。Visual指的是使用圖形用戶(hù)界面來(lái)開(kāi)發(fā)程序的方法,即不需要編寫(xiě)大量代碼去描述界面元素的外觀(guān)和位置,而只要把預(yù)先建立的對(duì)象拖放到屏幕上的某處即可。2025/2/26數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用186VBA的特點(diǎn)Access中的VBA語(yǔ)言支持面向?qū)ο蟮某绦蛟O(shè)計(jì)方法。Access中的VBA語(yǔ)言是應(yīng)用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法把程序和數(shù)據(jù)作為一個(gè)對(duì)象封裝起來(lái),并賦予應(yīng)有的屬性,使對(duì)象成為實(shí)實(shí)在在的東西。過(guò)程是由VBA代碼組成的單元,它包含一系列執(zhí)行操作或計(jì)算值的語(yǔ)句和方法,分為Sub過(guò)程和Fun

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論