




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
自考互聯(lián)網(wǎng)數(shù)據(jù)庫串講資料自考互聯(lián)網(wǎng)數(shù)據(jù)庫串講資料第一章緒論【學(xué)習(xí)要求】通過本章的學(xué)習(xí),考生首先應(yīng)該了解數(shù)據(jù)管理發(fā)展的歷程,并理解數(shù)據(jù)模型的三要素及常用的三種數(shù)據(jù)模型,并在此基礎(chǔ)上,掌握數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)和數(shù)據(jù)的兩層映像,理解數(shù)據(jù)庫管理系統(tǒng)的組成和功能。【重點(diǎn)、難點(diǎn)】(一)數(shù)據(jù)管理技術(shù)發(fā)展的三個(gè)階段(二)數(shù)據(jù)模型的概念和分類,尤其是關(guān)系數(shù)據(jù)模型(三)數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)(四)數(shù)據(jù)庫管理系統(tǒng)的整體概念?!究己酥R點(diǎn)】(一)數(shù)據(jù)庫技術(shù)是隨著數(shù)據(jù)管理的需要而產(chǎn)生的。數(shù)據(jù)處理的的核心是數(shù)據(jù)管理。數(shù)據(jù)管理指的是對數(shù)據(jù)的分類、組織、編碼、儲存、檢索和維護(hù)。(二)數(shù)據(jù)管理技術(shù)共經(jīng)歷了三個(gè)階段:人工管理階段、文件系統(tǒng)階段、數(shù)據(jù)庫系統(tǒng)階段(三)人工管理階段:數(shù)據(jù)不保存、數(shù)據(jù)需要由應(yīng)用程序自己進(jìn)行管理、基本上沒有文件概念、數(shù)據(jù)不共享。(四)文件系統(tǒng)階段:數(shù)據(jù)可以長期保存、文件系統(tǒng)管理數(shù)據(jù)、文件已經(jīng)多樣化、數(shù)據(jù)的存取基本上以記錄為單位。缺點(diǎn)有:數(shù)據(jù)共享性差,數(shù)據(jù)冗余度大;數(shù)據(jù)和程序缺乏獨(dú)立性(五)數(shù)據(jù)庫管理階段:1、數(shù)據(jù)結(jié)構(gòu)化。2、數(shù)據(jù)共享性高、冗余度小、易擴(kuò)充。3、數(shù)據(jù)獨(dú)立性高。4、統(tǒng)一的數(shù)據(jù)管理和控制:數(shù)據(jù)的安全性保護(hù)、數(shù)據(jù)的完整性控制、數(shù)據(jù)庫恢復(fù)和并發(fā)控制。5、數(shù)據(jù)的最小存取單位是數(shù)據(jù)項(xiàng)。DB:數(shù)據(jù)庫(Database),DB是統(tǒng)一管理的相關(guān)數(shù)據(jù)的集合。DBMS:數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagementSystem),DBMS是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,為用戶或應(yīng)用程序提供訪問DB的方法,包括DB的建立、查詢、更新及各種數(shù)據(jù)控制。DBMS總是基于某種數(shù)據(jù)模型,可以分為層次型、網(wǎng)狀型、關(guān)系型、面向?qū)ο笮虳BMS。DBS:數(shù)據(jù)庫系統(tǒng)(DatabaseSystem),DBS是實(shí)現(xiàn)有組織地、動(dòng)態(tài)地存儲大量關(guān)聯(lián)數(shù)據(jù),方便多用戶訪問的計(jì)算機(jī)軟件、硬件和數(shù)據(jù)資源組成的系統(tǒng),即采用了數(shù)據(jù)庫技術(shù)的計(jì)算機(jī)系統(tǒng)。數(shù)據(jù)庫技術(shù):是一門研究數(shù)據(jù)庫結(jié)構(gòu)、存儲、管理和使用的軟件學(xué)科。第一代數(shù)據(jù)庫系統(tǒng),即層次數(shù)據(jù)庫系統(tǒng)和網(wǎng)狀數(shù)據(jù)庫系統(tǒng)第二代數(shù)據(jù)庫系統(tǒng),即關(guān)系數(shù)據(jù)庫系統(tǒng)第三代數(shù)據(jù)庫系統(tǒng),即面向?qū)ο髷?shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫學(xué)科的研究范圍:數(shù)據(jù)庫管理系統(tǒng)軟件的研制;數(shù)據(jù)庫設(shè)計(jì);數(shù)據(jù)庫理論。(六) 數(shù)據(jù)模型是現(xiàn)實(shí)世界數(shù)據(jù)特征的抽象。是數(shù)據(jù)庫系統(tǒng)的核心和基礎(chǔ)。(七) 數(shù)據(jù)模型應(yīng)滿足三方面要求:一是能比較真實(shí)地模擬現(xiàn)實(shí)世界;二是容易為人所理解;三是便于在計(jì)算機(jī)上實(shí)現(xiàn)。(八) 根據(jù)模型應(yīng)用目的分為:⑴概念模型,也稱信息模型,它是按用戶的觀點(diǎn)對數(shù)據(jù)和信息建模。⑵數(shù)據(jù)模型,主要包括層次模型、網(wǎng)狀模型、關(guān)系模型和面向?qū)ο髷?shù)據(jù)模型,它是按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對數(shù)據(jù)建模。(九) 數(shù)據(jù)模型三個(gè)要素:1、數(shù)據(jù)結(jié)構(gòu)描述系統(tǒng)的靜態(tài)特性2、數(shù)據(jù)操作描述系統(tǒng)的動(dòng)態(tài)特性3、數(shù)據(jù)的約束條件是一組完整性規(guī)則的集合(十)概念模型數(shù)據(jù)描述的三個(gè)領(lǐng)域:現(xiàn)實(shí)世界、信息世界和機(jī)器世界(十一)數(shù)據(jù)描述的兩種形式:物理描述和邏輯描述。前者是指數(shù)據(jù)在存儲設(shè)備上的存取方式,后者是指程序員或用戶以用以操作的數(shù)據(jù)形式。(十二)兩個(gè)實(shí)體型之間的聯(lián)系可以分為三類:一對一聯(lián)系(1:1);一對多聯(lián)系(1:n);多對多聯(lián)系(m:n);E-R圖提供了表示實(shí)體型、屬性和聯(lián)系的方法。實(shí)體-聯(lián)系方法(E-R方法)是抽象和描述現(xiàn)實(shí)世界的有力工具。實(shí)體型:用矩形表示,矩形框內(nèi)寫明實(shí)體名。屬性:用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來。聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別志有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型(1:1,1:n 或m:n)。(十三)數(shù)據(jù)模型數(shù)據(jù)模型:層次模型、網(wǎng)狀模型、關(guān)系模型和面向?qū)ο髷?shù)據(jù)模型。其中層次模型和網(wǎng)狀模型統(tǒng)稱為非關(guān)系模型。層次模型:用樹型結(jié)構(gòu)表示實(shí)體間聯(lián)系的數(shù)據(jù)模型,它有以下兩個(gè)限制:⑴只有一個(gè)結(jié)點(diǎn)沒有雙親結(jié)點(diǎn),稱之為根結(jié)點(diǎn);⑵根以外的其他結(jié)點(diǎn)有且只有一個(gè)雙親結(jié)點(diǎn)。層次數(shù)據(jù)模型可以直接表示一對多(包括一對一)的聯(lián)系;層次模型表示多對多聯(lián)系,必須首先將其分解成一對多聯(lián)系。分解方法有兩種:冗余結(jié)點(diǎn)法和虛擬結(jié)點(diǎn)法。網(wǎng)狀模型:用有向圖結(jié)構(gòu)表示實(shí)體類型及實(shí)體間聯(lián)系的數(shù)據(jù)模型。(1)允許一個(gè)以上的結(jié)點(diǎn)無雙親;(2)一個(gè)結(jié)點(diǎn)可以有多于一個(gè)的雙親。關(guān)系模型:是由若干個(gè)關(guān)系模式組成的集合,其主要特征是用二維表格結(jié)構(gòu)表達(dá)實(shí)體集,用外鍵表示實(shí)體間聯(lián)系。關(guān)系模型要求關(guān)系必須是規(guī)范化的,即要求關(guān)系模式必須滿足一定的規(guī)范條件,這些規(guī)范條件中最基本的一條就是,關(guān)系的每一個(gè)分量必須是一個(gè)不可分的數(shù)據(jù)項(xiàng),也就是說,不允許表中還有表。(十四)數(shù)據(jù)系統(tǒng)的三級模式結(jié)構(gòu):外模式(物理模式)、模式(邏輯模式)和內(nèi)模式。(十五)兩級映象:外模式/模式映象,一般在外模式中描述。模式/內(nèi)模式映象,一般在內(nèi)模式中描述。兩層映象保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)能夠具有較高的邏輯獨(dú)立性和物理獨(dú)立性。(十六)數(shù)據(jù)庫管理系統(tǒng)的功能:⑴數(shù)據(jù)定義⑵數(shù)據(jù)操縱⑶數(shù)據(jù)庫運(yùn)行管理⑷數(shù)據(jù)組織、存儲和管理⑸數(shù)據(jù)庫的建立和維護(hù)⑹數(shù)據(jù)通信接口(十七)數(shù)據(jù)庫管理系統(tǒng)組成:⑴數(shù)據(jù)定義語言及其翻譯處理程序⑵數(shù)據(jù)操縱語言及其編譯(或解釋)程序⑶數(shù)據(jù)庫運(yùn)行控制程序⑷實(shí)用程序(十八)一個(gè)設(shè)計(jì)優(yōu)良的DBMS:⑴友好的用戶界面⑵比較完備的功能⑶較高的運(yùn)行效率⑷清晰的系統(tǒng)結(jié)構(gòu)和開放性第二章關(guān)系數(shù)據(jù)庫簡介【學(xué)習(xí)要求】通過本章的學(xué)習(xí),考生應(yīng)了解關(guān)系模型的概念,掌握關(guān)系模型的構(gòu)成,理解關(guān)系代數(shù)的兩類運(yùn)算以及關(guān)系演算的兩類演算語言。【重點(diǎn)、難點(diǎn)】(一)關(guān)系數(shù)據(jù)結(jié)構(gòu)和關(guān)系完整性(二)集合運(yùn)算(三)關(guān)系演算語言【考核知識點(diǎn)】(一)關(guān)系數(shù)據(jù)庫系統(tǒng)與非關(guān)系數(shù)據(jù)庫系統(tǒng)的區(qū)別是:關(guān)系系統(tǒng)只有"表"這一種數(shù)據(jù)結(jié)構(gòu);而非關(guān)系數(shù)據(jù)庫系統(tǒng)還有其他數(shù)據(jù)結(jié)構(gòu),對這些數(shù)據(jù)結(jié)構(gòu)有其他的操作。(二)關(guān)系模型的組成:關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合、關(guān)系完整性約束、關(guān)系數(shù)據(jù)語言。(三)關(guān)系的三類完整性約束:實(shí)體完整性、參照完整性和用戶定義的完整性。實(shí)體完整性規(guī)則:要求關(guān)系中組成主鍵的屬性上不能有空值。參照完整性規(guī)則:要求不引用不存在的實(shí)體。用戶定義完整性規(guī)則:由具體應(yīng)用環(huán)境決定,系統(tǒng)提供定義和檢驗(yàn)這類完整性的機(jī)制。(四)關(guān)系數(shù)據(jù)語言的共同特點(diǎn)是:語言具有完備的表達(dá)能力,是非過程化的集合操作語言,功能強(qiáng),能夠嵌入高級語言中使用。基本關(guān)系具有以下六條性質(zhì):列是同質(zhì)的(Homogeneous),即每一列中的分量同一類型的數(shù)據(jù),來自同一個(gè)域。不同的列可出自同一個(gè)域,稱其中的每列為一個(gè)屬性,不同的屬性要給予不同的屬性名。列的順序無所謂,即列的次序可以任意交換。任意兩個(gè)元組不能完全相同。行的順序無所謂,即行的次序可以任意交換。分量必須取原子值,即每一個(gè)分量都必須是不可分的數(shù)據(jù)項(xiàng)。關(guān)系模型要求關(guān)系必須是規(guī)范化的,即要求關(guān)系模式必須滿足一定的規(guī)范條件。這些規(guī)范條件中最基本的一條就是,關(guān)系的每一個(gè)分量必須是一個(gè)不可分的數(shù)據(jù)項(xiàng)。(五)關(guān)系是關(guān)系模式在某一個(gè)時(shí)刻的狀態(tài)或內(nèi)容。關(guān)系模式是靜態(tài)的,穩(wěn)定的,而關(guān)系是動(dòng)態(tài)的、隨時(shí)間不斷變化的,因?yàn)殛P(guān)系操作在不斷地更新著數(shù)據(jù)庫中的數(shù)據(jù)。但在實(shí)際當(dāng)中,人們常常把關(guān)系模式和關(guān)系都稱為關(guān)系。實(shí)體完整性規(guī)則說明如下:(1)實(shí)體完整性規(guī)則是針對基本關(guān)系而言的。一個(gè)基本表通常對應(yīng)現(xiàn)實(shí)世界的一個(gè)實(shí)體集。例如學(xué)生關(guān)系對應(yīng)于學(xué)生的集合。(2)現(xiàn)實(shí)世界中的實(shí)體是可區(qū)分的,即它們具有某種唯一性標(biāo)識(3)相應(yīng)地,關(guān)系模型中以主碼作為唯一性標(biāo)識。(4)主碼中的屬性即主屬性不能取空值。所謂空值就是"不知道"或"無意義"的值。關(guān)系可以有三種類型:基本關(guān)系(通常又稱為基本表或基表)、查詢表和視圖表。(六)元組變量主要有兩方面的用途:簡化關(guān)系名。操作條件中使用量詞時(shí)必須用元組變量(七)關(guān)系代數(shù)和關(guān)系演算關(guān)系式一種抽象的查詢語言,是關(guān)系數(shù)據(jù)操縱語言的一種傳統(tǒng)表達(dá)方式,它是用對關(guān)系的運(yùn)算來表達(dá)查詢的。任何一種運(yùn)算都是將一定的運(yùn)算符作用于一定的運(yùn)算對象上,得到預(yù)期的運(yùn)算結(jié)果。所以運(yùn)算對象、運(yùn)算符、運(yùn)算結(jié)果是運(yùn)算的三大要素。關(guān)系代數(shù)的運(yùn)算對象是關(guān)系,運(yùn)算結(jié)果也為關(guān)系。(八)元祖關(guān)系演算和域關(guān)系演算元祖關(guān)系演算以元祖變量作為謂詞變元的基本對象。域關(guān)系演算以元祖變量的分量即域變量作為謂詞變元的基本對象。(九)域關(guān)系演算語言數(shù)關(guān)系演算的另一種形式是域關(guān)系演算。域關(guān)系演算以元祖變量的分量即域變量作為謂詞變元的基本對象。1975年由IBM公司的M.ZIoof提出的QBE(QueryByExample)就是一個(gè)很有特色的域關(guān)系演算語言,該語言于1978年在IBM370上得以實(shí)現(xiàn)。QBE也指此關(guān)系數(shù)據(jù)庫管理系統(tǒng)。QBE是通過例子進(jìn)行查詢的簡稱,其罪突出的特點(diǎn)是它的操作方式。它是一種高度非過程化的基于屏幕表格的查詢語言,用戶通過終端屏幕編輯程序以填寫表格的方式構(gòu)造查詢要求,而查詢結(jié)果也是以表格形式顯示,因此非常直觀,易學(xué)易用。QBE中用示例元素來表示查詢結(jié)果可能的例子,示例元素實(shí)質(zhì)上就是域變量。(1)檢索操作QBE的檢索操作分為簡單查詢、條件查詢和使用集函數(shù)。(2)更新操作QBE是更新操作包括修改操作、插入操作和刪除操作。第三章關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL【學(xué)習(xí)要求】通過本章的學(xué)習(xí),考生應(yīng)了解SQL語言的主要特點(diǎn),掌握SQL語言的數(shù)據(jù)定義功能和數(shù)據(jù)操縱功能,理解視圖的定義和優(yōu)點(diǎn),了解數(shù)據(jù)控制的功能,了解嵌入式SQL語句的一般形式及其分類?!局攸c(diǎn)、難點(diǎn)】一、 SQL語言的產(chǎn)生及其主要特點(diǎn)二、 SQL語言的檢索功能三、 數(shù)據(jù)控制的概念【考核知識點(diǎn)】(—)SQL語言的主要特點(diǎn)【簡答】SQL語言集數(shù)據(jù)查詢、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控制功能于一體。特點(diǎn)包括:①綜合統(tǒng)一、②高度非過程化、③面向集合的操作方式、④以同一種語法結(jié)構(gòu)提供兩種使用方式、⑤語言簡潔,易學(xué)易用。(二)定義基本表建立數(shù)據(jù)庫最重要的一部就是定義一些基本表。SQL語言使用CREATETABLE語句定義基本表,其一般格式如下:CREATETABLEv表名〉(<列名><數(shù)據(jù)類型〉[列級完整性約束條件][,<列名><數(shù)據(jù)類型〉[列級彎成型約束條件[,<表級完整性約束條件>]其中<表名>是所要定義的基本表的名字,它可以由一個(gè)或多個(gè)屬性(列)組成。建表的同時(shí)通常還可以定義與該表有關(guān)的完整性約束條件,這些完整次那個(gè)約束條件唄存入系統(tǒng)的數(shù)據(jù)字典中,當(dāng)用戶操作表中數(shù)據(jù)時(shí)由DBMS自動(dòng)檢查該數(shù)據(jù)是否違背這些完整性約束條件如果完整性約束條件涉及到該表的多個(gè)屬性,則必須定義在表級上,否則既可以定義在列級,也可以定義在表級。定義表的各個(gè)屬性時(shí)需要指明其數(shù)據(jù)類型及長度。不同的數(shù)據(jù)庫系統(tǒng)支持的數(shù)據(jù)類型不完全相同。具體的數(shù)據(jù)類型定義參照相應(yīng)的數(shù)據(jù)庫管理系統(tǒng)說明。(三)簡單查詢、連接查詢、嵌套查詢、集合查詢數(shù)據(jù)庫查詢時(shí)數(shù)據(jù)庫的核心。(1) 簡單查詢:簡單查詢僅涉及數(shù)據(jù)庫中的一個(gè)表。查詢表中的若干列取消取值重復(fù)的行條件查詢對查詢結(jié)果排序使用集函數(shù)對查詢結(jié)果分組,如GROUPBY子句將查詢結(jié)果表按某一列或多列值分組,值相等的為一組。(2) 連接查詢?nèi)舨樵兺瑫r(shí)涉及兩個(gè)以上的表,則稱之為連接查詢。連接查詢時(shí)關(guān)系數(shù)據(jù)庫最主要的查詢,包括等值連接、自然連接、非等值連接、自身連接、外連接和復(fù)合條件連接查詢。(3) 嵌套查詢嵌套查詢亦稱為子查詢,嵌套查詢時(shí)指一個(gè)SE-LECTFROMWHERE查詢塊可以嵌入另一個(gè)查詢塊之中。(四)修改、刪除1修改(UPDATE)(亦稱為更新)修改操作語句的一般格式為:UPDATE<表名〉SET<列名>=<表達(dá)式>[,<列名>=<表達(dá)式>]…[WHERE謂詞]2、刪除(DELETE)刪除語句的一般格式為:DELETEFROM表名[WHERE謂詞](五)視圖的定義試圖是從一個(gè)或幾個(gè)基本表(或視圖)導(dǎo)出的表,它與基本表不同,是一個(gè)虛表。數(shù)據(jù)庫中只存放視圖的定義,而不存放視圖對應(yīng)的數(shù)據(jù),這些數(shù)據(jù)仍存放在原來的基本表中。(六) 查詢視圖、更新視圖查詢視圖:視圖定義后每用戶就可以像對基本表進(jìn)行查詢一樣對視圖進(jìn)行查詢了,對基本的各種查詢操作一般都可以作用于視圖。更新視圖:更新視圖包括插入(INSERT)、刪除(DELETE)和修改(UPDATE)三類操作。由于視圖時(shí)不實(shí)際存儲數(shù)據(jù)的虛表,因此對視圖的更新,最終要轉(zhuǎn)換為對基本表的更新。為防止用戶通過視圖對數(shù)據(jù)進(jìn)行增、刪、改時(shí),無意或故意造作不屬于視圖范圍內(nèi)的基本表數(shù)據(jù),可在定義視圖時(shí)加上WITHCHECKOPTION子句,這樣在視圖上增、刪、改數(shù)據(jù)時(shí),DBMS會(huì)進(jìn)一步檢查視圖定義中的條件,若不滿足條件,則拒絕執(zhí)行該操作。(七) 定義和合理地使用視圖能帶來的好處為:【簡答】⑴、視圖能夠簡化用戶的操作⑵、視圖使用戶能以多種角度看待同一數(shù)據(jù)⑶、視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨(dú)立性⑷、視圖能夠?qū)C(jī)密數(shù)據(jù)提供安全保護(hù)(八) 視圖更新操作規(guī)則的限制:如果視圖是從多個(gè)基本表使用聯(lián)接操作導(dǎo)出的,則不允許更新。如果導(dǎo)出的視圖使用了分組和聚合操作,也不允許更新。如果視圖是從單個(gè)基本表使用選擇和投影操作導(dǎo)出的,并且包括了基本表的主鍵或某個(gè)候選鍵,則可以執(zhí)行操作。(九) SQL中數(shù)據(jù)控制功能包括事務(wù)管理功能和數(shù)據(jù)保護(hù)功能,即數(shù)據(jù)庫的恢復(fù)、并發(fā)控制;數(shù)據(jù)庫的安全性和完整性。(填空、選擇)第四章關(guān)系數(shù)據(jù)庫設(shè)計(jì)理論【學(xué)習(xí)要求】通過本章的學(xué)習(xí),考生應(yīng)了解數(shù)據(jù)依賴的定義及兩種重要的類型,理解各類范式的概念及涵義,并掌握相關(guān)概念及關(guān)系模式規(guī)范化的步驟。【重點(diǎn)、難點(diǎn)】(一) 數(shù)據(jù)依賴的兩種類型(二) 各類范式的概念及含義(三) 關(guān)系模式的分解及判斷與遠(yuǎn)關(guān)系模式等價(jià)的三個(gè)標(biāo)準(zhǔn)【考核知識點(diǎn)】(一) 數(shù)據(jù)依賴的含義數(shù)據(jù)依賴是通過一個(gè)關(guān)系中屬性間值的相等與否體現(xiàn)出來的數(shù)據(jù)間的相互關(guān)系,是現(xiàn)實(shí)世界屬性間相互聯(lián)系的抽象,是數(shù)據(jù)內(nèi)在的性質(zhì),是語義的體現(xiàn)?,F(xiàn)在人們已經(jīng)提出了許多種類型的數(shù)據(jù)依賴,其中最重要的是函數(shù)依賴和多值依賴。(二) 相關(guān)概念1、函數(shù)依賴設(shè)R(U)是一個(gè)關(guān)系模式,U是R的屬性集合,X和Y式U的子集。對于R(U)的任意一個(gè)可能的關(guān)系,如果r中不存在兩個(gè)元祖,它們在X上的屬性值相同,而在Y上的屬性值不同,則稱“X函數(shù)確定Y”或“Y函數(shù)依賴于X”,記作X-Y。2、 平凡函數(shù)依賴于非平凡函數(shù)依賴在關(guān)系模式R(U)中,對于U的子集X和Y,如果X-Y,但YX,則X-Y是非平凡函數(shù)依賴,若YX,則稱X-Y為平凡函數(shù)依賴。3、 傳遞函數(shù)依賴在關(guān)系函數(shù)R(U)中,如果XfY,Y—Z,且YX,Y-X,則稱Z傳遞函數(shù)依賴于X。關(guān)系模式規(guī)范化時(shí)一般應(yīng)遵循以下原則:關(guān)系模式進(jìn)行無損連接分解。合理選擇規(guī)范化程度。正確性與可實(shí)現(xiàn)性原則。關(guān)系模式規(guī)范化的基本步驟如圖所示。對1NF關(guān)系進(jìn)行投影,消除原關(guān)系中非主屬性對碼的函數(shù)依賴,將1NF關(guān)系轉(zhuǎn)換為若干個(gè)2NF關(guān)系。對2NF關(guān)系進(jìn)行投影,消除原關(guān)系中非主屬性對碼的傳遞函數(shù)依賴,從而產(chǎn)生一組3NF關(guān)系。對3NF關(guān)系進(jìn)行投影,消除原關(guān)系中主屬性對碼的部分函數(shù)依賴和傳遞函數(shù)依賴(也就是說,使決定屬性都成為投影的候選碼),得到一組BCNF關(guān)系。消除決定屬性集非碼的非平凡函數(shù)依賴1NF消除非主屬性對碼的部分函數(shù)依賴2NF消除非主屬性對碼的傳遞函數(shù)依賴3NF消除主屬性對碼的部分和傳遞函數(shù)依賴BCNF消除非平凡且非函數(shù)依賴的多值依賴4NF消除不是由候選碼所蘊(yùn)含的連接依賴5NF以上三步也可以合并為一步:對原關(guān)系進(jìn)行投影,消除決定屬性不是候選碼的任何函數(shù)依賴。對BCNF關(guān)系進(jìn)行投影,消除原關(guān)系中非平凡且非函數(shù)依賴的多值依賴,從而產(chǎn)生一組4NF關(guān)系。對4NF關(guān)系進(jìn)行投影,消除原關(guān)系中不是由候選碼所蘊(yùn)含的連接依賴,即可得到一組5NF關(guān)系。5NF是最終范式。1NF/2NF/3NF存在的問題:①插入異常②刪除異常③數(shù)據(jù)冗余度大④修改復(fù)雜。BCNF問題:①數(shù)據(jù)冗余度大②增加操作復(fù)雜③刪除操作復(fù)雜④修改操作復(fù)雜。(五) 關(guān)系模式分解的三個(gè)定義(判斷對關(guān)系模式的一個(gè)分解是否與原關(guān)系模式等價(jià)可以有三種不同的標(biāo)準(zhǔn)):(填空、選擇)(1) 分解具有"無損連接性"。(2) 分解要"保持函數(shù)依賴"。(3) 分解既要"保持函數(shù)依賴",又要具有"無損連接性"。(六) 規(guī)范化理論提供了一套完整的模式分解算法,按照這套算法可以做到:若要求分解具有無損連接性,那么模式分解一定能夠達(dá)到4NF。若要求分解保持函數(shù)依賴,那么模式分解一定能夠達(dá)到3NF,但不一定能夠達(dá)到BCNF。若要求分解既具有無損連接性,又保持函數(shù)依賴,則模式分解一定能夠達(dá)到3NF,但不一定能夠達(dá)到BCNF。(七) BCNF的關(guān)系模式都具有如下3個(gè)性質(zhì):所有非主屬性都完全函數(shù)依賴于每個(gè)候選碼。所有主屬性都完全函數(shù)依賴于每個(gè)不包含它的候選碼。沒有任何屬性完全函數(shù)依賴于非碼的任何一組屬性。(八) 分解具有無損連接性和分解保持函數(shù)依賴是兩個(gè)互相獨(dú)立的標(biāo)準(zhǔn)。(選擇)第五章數(shù)據(jù)庫保護(hù)【學(xué)習(xí)要求】通過本章的學(xué)習(xí),考生應(yīng)了解數(shù)據(jù)庫安全性控制的措施,理解完整性約束條件和控制機(jī)制,理解并發(fā)控制的原則和方法,了解恢復(fù)的原理及實(shí)現(xiàn)技術(shù)?!局攸c(diǎn)、難點(diǎn)】(一)數(shù)據(jù)庫安全性控制的一般方法(二)數(shù)據(jù)庫完整性約束條件的分類(三)并發(fā)控制的兩類鎖協(xié)議(四)數(shù)據(jù)庫運(yùn)行故障恢復(fù)的原理和策略【考核知識點(diǎn)】(一)數(shù)據(jù)庫的被破壞主要有以下幾個(gè)方面:(1)系統(tǒng)的軟、硬件故障,造成數(shù)據(jù)被破壞。(2)數(shù)據(jù)庫的并發(fā)操作引起數(shù)據(jù)的不一致性。(3)自然的或人為的破壞。(4)對數(shù)據(jù)庫數(shù)據(jù)的更新操作有誤。針對上述問題,數(shù)據(jù)庫管理系統(tǒng)提供相應(yīng)的功能:(1)數(shù)據(jù)庫恢復(fù):在系統(tǒng)失效后的數(shù)據(jù)庫恢復(fù),配合定時(shí)備份數(shù)據(jù)庫,使數(shù)據(jù)庫不丟失數(shù)據(jù)。(2)并發(fā)控制:保證多用戶能共享數(shù)據(jù)庫,并維護(hù)數(shù)據(jù)的一致性(3)安全性保護(hù):防止對數(shù)據(jù)庫的非法使用,以避免數(shù)據(jù)的泄露纂改或破壞。(4)完整性保護(hù):保證數(shù)據(jù)的正確性和一致性。(二)數(shù)據(jù)庫安全控制的一般方法:①用戶標(biāo)識和鑒定;②存取控制;③定義視圖;④審計(jì);⑤數(shù)據(jù)加密。(三)數(shù)據(jù)的安全性、完整性數(shù)據(jù)庫的安全性主要是指保護(hù)數(shù)據(jù)庫,防止由于非法使用數(shù)據(jù)庫造成數(shù)據(jù)泄露、更改或破壞。(填空、選擇)數(shù)據(jù)庫的完整性:數(shù)據(jù)的正確性、一致性和相容性。(填空、選擇)數(shù)據(jù)的完整性與安全性是數(shù)據(jù)庫保護(hù)的兩個(gè)不同的方面。安全性是防止用戶非法使用數(shù)據(jù)庫。完整性則是防止合法用戶使用數(shù)據(jù)庫時(shí)向數(shù)據(jù)庫中加入不合語義的數(shù)據(jù)。也就是說,安全性措施的防范對象是非法用戶和非法操作,完整性措施的防范對象是不合語義的數(shù)據(jù)。(簡答)(四)完整性約束條件完整性約束條件作用的對象可以有列級、元組級和關(guān)系級三種粒度。(填空、選擇)1、靜態(tài)列級約束。是對一個(gè)列的取值域的說明,包括以下幾個(gè)方面2、靜態(tài)元組約束。一個(gè)元組是由若干個(gè)列值組成的,靜態(tài)元組約束就是規(guī)定組成的一個(gè)元組的各個(gè)列之間的約束關(guān)系。3、靜態(tài)關(guān)系約束。在一個(gè)關(guān)系的各個(gè)元組之間或者若干關(guān)系之間常常存在各種聯(lián)系或約束。4、動(dòng)態(tài)列級約束。動(dòng)態(tài)列級約束是修改列定義或列植時(shí)應(yīng)滿足的約束條件。5、動(dòng)態(tài)元組約束。動(dòng)態(tài)元組約束是指修改某個(gè)元組的值時(shí)需要參照其舊值,并且新舊值之間需要滿足某種約束條件。6、動(dòng)態(tài)關(guān)系約束。動(dòng)態(tài)關(guān)系約束是加在關(guān)系變化前后狀態(tài)上的限制條件,例如,事務(wù)一致性,原子性等約束條件。(五) DBMS的完整性控制機(jī)制應(yīng)具有三個(gè)方面功能(簡答)(1) 定義功能,即提供定義完整性約束條件的機(jī)制。(2) 檢查功能,即檢查用戶發(fā)出的操作請求是否違背了完整性約束條件。(3) 如果發(fā)現(xiàn)了用戶的操作請求使數(shù)據(jù)違背了完整性的約束條件,則采取一定的動(dòng)作來保證數(shù)據(jù)的完整性。(六) 在實(shí)現(xiàn)參照完整性時(shí)需要考慮以下幾方面:(1)外碼是否可以接受空值(2)在被參照關(guān)系中刪除元組時(shí)的考慮(3)修改被參照關(guān)系中主碼時(shí)的考慮(七)事物的概念和特征事務(wù):并發(fā)控制的單位,是用戶定義的一組數(shù)據(jù)庫操作序列。特征:原子性、一致性、隔離性、持久性。(簡答)(八)并發(fā)控制的主要技術(shù)是采用封鎖機(jī)制。(選擇)(九)封鎖封鎖就是事務(wù)T可以向系統(tǒng)發(fā)出請求,對某個(gè)數(shù)據(jù)對象(最常用的是記錄)加鎖。于是事務(wù)T對這個(gè)數(shù)據(jù)對象就有一定的控制?;镜姆怄i類型有兩種:排它鎖(X鎖)和共享鎖(S鎖)。(十)活鎖和死鎖和操作系統(tǒng)一樣,封鎖的方法可能引起活鎖和死鎖?;铈i是指當(dāng)若干事務(wù)要對同一數(shù)據(jù)項(xiàng)加鎖時(shí),造成一些事務(wù)的永遠(yuǎn)等待,得不到控制權(quán)的現(xiàn)象;死鎖是指兩個(gè)以上事務(wù)集合中的每個(gè)事務(wù)都在等待加鎖當(dāng)前已被另一事務(wù)加鎖的數(shù)據(jù)項(xiàng),從而造成相互等待的現(xiàn)象。(十一)數(shù)據(jù)庫中解決死鎖的常用方法有:⑴要求每個(gè)事務(wù)一次就將所有要使用的數(shù)據(jù)全部加鎖,否則就不能執(zhí)行。⑵采用按序加鎖法。⑶不采取任何措施來預(yù)防死鎖的發(fā)生,而是周期性的檢查系統(tǒng)中是否有死鎖。(十二)可串行性可串行化的調(diào)度:如果幾個(gè)事務(wù)并行(交錯(cuò))執(zhí)行的結(jié)果和按次序串行執(zhí)行的結(jié)果相同,則稱該并行執(zhí)行結(jié)果是正確的。這樣的調(diào)度稱為可串行化的調(diào)度。兩段鎖協(xié)議是指所有事務(wù)必須分兩個(gè)階段對數(shù)據(jù)庫項(xiàng)加鎖和解鎖。(十三)兩段鎖協(xié)議規(guī)定所有的事務(wù)應(yīng)遵守下列規(guī)則:⑴、在對任何數(shù)據(jù)進(jìn)行讀、寫操作之前,事務(wù)首先要獲得對該數(shù)據(jù)的封鎖。⑵、在釋放一個(gè)封鎖之后,事務(wù)再獲得任何其他封鎖。(十四)“兩段”鎖的含義所謂“兩段”鎖含義是:事務(wù)分為兩個(gè)階段。第一階段是獲得封鎖,也稱為擴(kuò)展階段。在該階段,事務(wù)可以申請獲得任何數(shù)據(jù)項(xiàng)上的任何類型的鎖,但是不能釋放任何鎖。第二階段是釋放封鎖,也稱為收縮階段。在該階段,事務(wù)可以釋放任何數(shù)據(jù)項(xiàng)上的任何類型的鎖,但是不能再申請任何鎖。(十五)故障的種類(簡答)數(shù)據(jù)庫系統(tǒng)故障可分為:(1) 事務(wù)內(nèi)部的故障:事務(wù)內(nèi)部的故障有的是可以通過事務(wù)程序本身發(fā)現(xiàn)的,有的是非預(yù)期的,不能由事物程序處理的。這類恢復(fù)操作稱為事務(wù)撤銷。(2) 系統(tǒng)故障:系統(tǒng)故障是指造成系統(tǒng)停止運(yùn)轉(zhuǎn)的任何事件,使得系統(tǒng)要重新啟動(dòng)。(3) 介質(zhì)故障:系統(tǒng)故障常稱為軟故障,介質(zhì)故障稱為硬故障。硬故障指外存故障,如磁盤的磁頭碰撞,瞬時(shí)的強(qiáng)磁場干擾。(4)計(jì)算機(jī)病毒。計(jì)算機(jī)病毒是一種認(rèn)為的故障或破壞,是一些惡作劇者研制的一種計(jì)算機(jī)程序。(十六)數(shù)據(jù)轉(zhuǎn)儲轉(zhuǎn)儲:靜態(tài)轉(zhuǎn)儲(轉(zhuǎn)儲期間不允許對數(shù)據(jù)庫進(jìn)行任何存取、修改活動(dòng))動(dòng)態(tài)轉(zhuǎn)儲(轉(zhuǎn)儲期間允許對數(shù)據(jù)進(jìn)行存取或修改)海量轉(zhuǎn)儲(每次轉(zhuǎn)儲全部數(shù)據(jù)庫)增量轉(zhuǎn)儲(每次只轉(zhuǎn)儲上次轉(zhuǎn)儲后更新過的數(shù)據(jù))(十七)日志文件日志文件是用來記錄對數(shù)據(jù)庫每一次更新活動(dòng)的文件。在轉(zhuǎn)儲中必須建立日志文件,后援副本和日志文件綜合起來才能有效地恢復(fù)數(shù)據(jù)庫。利用日志文件恢復(fù)事務(wù)的過程:①從頭掃描日志文件,找出哪些事務(wù)在故障發(fā)生時(shí)已經(jīng)結(jié)束,哪些事務(wù)尚未結(jié)束;②對尚未結(jié)束的事務(wù)進(jìn)行撤銷處理,對已經(jīng)結(jié)束的事務(wù)進(jìn)行重做處理。(十八)利用轉(zhuǎn)儲和日志文件可以有效地恢復(fù)數(shù)據(jù)庫硬件故障;病毒破壞:當(dāng)數(shù)據(jù)庫本身被破壞時(shí),可重裝轉(zhuǎn)儲數(shù)據(jù)庫的后備副本,然后運(yùn)行日志文件,執(zhí)行事務(wù)恢復(fù),這樣就可以重建數(shù)據(jù)庫。發(fā)生事務(wù)故障;系統(tǒng)故障:當(dāng)數(shù)據(jù)庫本身沒被破壞,但內(nèi)容已經(jīng)不可靠時(shí),可利用日志文件恢復(fù)事務(wù),從而使數(shù)據(jù)庫回到某一正確狀態(tài),這時(shí)不必重裝后備副本。第六章數(shù)據(jù)庫設(shè)計(jì)【學(xué)習(xí)要求】通過本章的學(xué)習(xí),考生應(yīng)了解數(shù)據(jù)庫設(shè)計(jì)的步驟,理解并掌握需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)庫物理設(shè)計(jì)以及數(shù)據(jù)庫實(shí)施的方法,了解數(shù)據(jù)庫運(yùn)行與維護(hù)的內(nèi)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- ceo聘用合同范例
- 農(nóng)村養(yǎng)殖房屋買賣合同范例
- 業(yè)務(wù)講座合同范例
- 創(chuàng)業(yè)大廈合同范例
- 2024年江蘇常熟理工學(xué)院招聘筆試真題
- 2024年滁州鳳陽縣事業(yè)單位招聘筆試真題
- 二零二五年度供應(yīng)鏈合同糾紛審理要點(diǎn)及風(fēng)險(xiǎn)管理
- 2025年度游艇租賃與船舶租賃行業(yè)規(guī)范制定合同
- 二零二五年度家庭裝修智能家居智能家電安裝合同
- 二零二五年度儲藏煤場租賃與智能化倉儲設(shè)備租賃合同
- 2024-2030年中國數(shù)據(jù)中心機(jī)柜機(jī)架行業(yè)發(fā)展?fàn)顩r與投資盈利預(yù)測報(bào)告
- DL-T5704-2014火力發(fā)電廠熱力設(shè)備及管道保溫防腐施工質(zhì)量驗(yàn)收規(guī)程
- CBZ125-1998-潛艇船體結(jié)構(gòu)焊接質(zhì)量檢驗(yàn)規(guī)則
- 2024年河南省信陽市浉河區(qū)二模語文試卷
- 代理商區(qū)域保護(hù)協(xié)議書范本
- 2024年包頭鋼鐵職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫及答案解析
- 2024年南京鐵道職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫及答案解析
- 英語定位紙模板
- 中外政治思想史-形成性測試四-國開(HB)-參考資料
- 小學(xué)語文中高年級單元整體教學(xué)設(shè)計(jì)的實(shí)踐研究(中期報(bào)告)
- 國家安全教育國土安全
評論
0/150
提交評論