等級考-數(shù)據(jù)庫系統(tǒng).ppt_第1頁
等級考-數(shù)據(jù)庫系統(tǒng).ppt_第2頁
等級考-數(shù)據(jù)庫系統(tǒng).ppt_第3頁
等級考-數(shù)據(jù)庫系統(tǒng).ppt_第4頁
等級考-數(shù)據(jù)庫系統(tǒng).ppt_第5頁
已閱讀5頁,還剩78頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

等級考基礎(chǔ)數(shù)據(jù)庫系統(tǒng),東華大學(xué)計算機學(xué)院 孫 莉 2016年2月,1數(shù)據(jù)庫(DataBase,DB) 長期存儲在計算機內(nèi),有組織的、可共享的大量數(shù)據(jù)集合。 數(shù)據(jù)庫的特點: (1) 數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存, (2)可為各種用戶共享。 (3) 冗余度小。 (4)數(shù)據(jù)獨立性高。 (5)易擴展。,1.1 基本概念,2數(shù)據(jù)庫管理系統(tǒng)(DataBaseManagementSystem,DBMS) 管理數(shù)據(jù)庫的系統(tǒng)軟件。 負責(zé)數(shù)據(jù)組織、操作、維護、控制與保護、服務(wù) 。,數(shù)據(jù)庫管理系統(tǒng)的主要功能: 1)數(shù)據(jù)庫定義功能 定義數(shù)據(jù)庫的外模式、 模式和內(nèi)模式, 定義兩級映射。 2)數(shù)據(jù)庫操縱功能 實現(xiàn)對數(shù)據(jù)庫中數(shù)據(jù)的基本操作, 即查找(或檢索)、 插入、修改和刪除操作。,3)數(shù)據(jù)的安全性、 完整性定義與檢查 4)數(shù)據(jù)庫并發(fā)控制與故障恢復(fù) 5) 數(shù)據(jù)的服務(wù) 初始數(shù)據(jù)的載入、 數(shù)據(jù)拷貝、轉(zhuǎn)儲 ; 數(shù)據(jù)庫的重組、性能檢測與分析等功能。,數(shù)據(jù)庫管理系統(tǒng)的組成 為完成上述功能,數(shù)據(jù)庫管理系統(tǒng)通常提供相應(yīng)的數(shù)據(jù)語言: (1)數(shù)據(jù)定義子語言, (2)數(shù)據(jù)操縱子語言, (3)數(shù)據(jù)控制子語言。,3 數(shù)據(jù)庫管理員 (Data Base Administrator, 簡稱為DBA) 負責(zé)全面管理和控制數(shù)據(jù)庫系統(tǒng)正常運行的人員, 承擔(dān)著規(guī)劃、設(shè)計、創(chuàng)建、 監(jiān)控和維護整個數(shù)據(jù)庫結(jié)構(gòu)的責(zé)任。 DBA是數(shù)據(jù)庫系統(tǒng)中最重要的人員。,DBA的主要職責(zé)包括: (1) 數(shù)據(jù)庫設(shè)計:確定數(shù)據(jù)庫中的內(nèi)容和結(jié)構(gòu)。 設(shè)計概念模式、 內(nèi)模式以及各個用戶的外模式。 (2)數(shù)據(jù)庫維護, 對數(shù)據(jù)庫的安全性、完整性、并發(fā)控制、系統(tǒng)恢復(fù)和數(shù)據(jù)轉(zhuǎn)儲, 進行實施和維護。 (3) 改善系統(tǒng)性能,提高效率:監(jiān)控數(shù)據(jù)庫的使用和運行。 分析數(shù)據(jù)庫系統(tǒng)的性能, 及時調(diào)整內(nèi)部結(jié)構(gòu),提高系統(tǒng)效率。,4 數(shù)據(jù)庫系統(tǒng)(Data Base System, DBS) 具有管理和控制數(shù)據(jù)庫功能的計算機系統(tǒng)。 它通常由5部分組成: 數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員和用戶、系統(tǒng)平臺-硬件與軟件。 相互之間的關(guān)系如圖1.1所示。,硬件:計算機、網(wǎng)絡(luò) 圖1.1 一個簡化的數(shù)據(jù)庫系統(tǒng)環(huán)境,1.2 數(shù)據(jù)庫系統(tǒng)的發(fā)展,數(shù)據(jù)庫技術(shù)是研究數(shù)據(jù)庫的結(jié)構(gòu)、 存儲、 設(shè)計、 管理和使用的一門軟件學(xué)科。 數(shù)據(jù)管理技術(shù)經(jīng)歷了三個發(fā)展階段: 人工管理、 文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng),人工管理階段 20世紀(jì)50年代中期以前。 硬件:外部存儲器只有紙帶、 卡片、 磁帶, 沒有能直接存取的存儲設(shè)備(如磁盤等); 軟件:只有匯編語言, 沒有操作系統(tǒng), 沒有專門的管理數(shù)據(jù)的軟件。,人工管理階段數(shù)據(jù)管理的特點: (1)數(shù)據(jù)管理者:應(yīng)用程序,數(shù)據(jù)不保存。 (2)數(shù)據(jù)面向?qū)ο螅耗骋粦?yīng)用程序。 (3)數(shù)據(jù)共享程度:無,數(shù)據(jù)冗余度極大 (4)數(shù)據(jù)獨立性:無獨立性, 以來于應(yīng)用程序。 (5)數(shù)據(jù)的結(jié)構(gòu)化:無,文件系統(tǒng)階段 50年代后期到60年代中期。 硬件有了磁盤、 磁鼓等能直接存取的外設(shè); 軟件有了高級語言和操作系統(tǒng)(有專門負責(zé)管理數(shù)據(jù)的文件系統(tǒng))。,文件系統(tǒng)階段管理數(shù)據(jù)的特點: (1)數(shù)據(jù)管理者:文件系統(tǒng),數(shù)據(jù)可長期保存。 (2)數(shù)據(jù)面向?qū)ο螅耗骋粦?yīng)用程序。 (3)數(shù)據(jù)共享程度:共享程度低,數(shù)據(jù)冗余度大。 (4)數(shù)據(jù)獨立性:獨立性差, 數(shù)據(jù)的邏輯結(jié)構(gòu)改變必須修改應(yīng)用程序。 (5)數(shù)據(jù)的結(jié)構(gòu)化:記錄內(nèi)有結(jié)構(gòu),整體無結(jié)構(gòu),數(shù)據(jù)庫系統(tǒng)階段 60年代后期以來。數(shù)據(jù)庫系統(tǒng)階段管理數(shù)據(jù)的特點: (1)數(shù)據(jù)管理者:DBMS。 (2)數(shù)據(jù)面向?qū)ο螅合到y(tǒng)。 (3)數(shù)據(jù)共享程度:共享程度高,數(shù)據(jù)冗余度低。 (4)數(shù)據(jù)獨立性:獨立性高, 數(shù)據(jù)的邏輯結(jié)構(gòu)改變不必修改應(yīng)用程序。數(shù)據(jù)的物理結(jié)構(gòu)改變也不必修改應(yīng)用程序。 (5)數(shù)據(jù)的結(jié)構(gòu)化:整體結(jié)構(gòu)化。數(shù)據(jù)結(jié)構(gòu)化是數(shù)據(jù)庫和文件系統(tǒng)的本質(zhì)區(qū)別。 (6)數(shù)據(jù)控制能力: DBMS統(tǒng)一管理和控制。,1.3 數(shù)據(jù)庫系統(tǒng)內(nèi)部結(jié)構(gòu)體系,數(shù)據(jù)庫系統(tǒng)采用三級模式結(jié)構(gòu): 外模式、 模式和內(nèi)模式三級構(gòu)成。,1 外模式(又稱子模式或用戶模式) 用戶看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述(用戶的數(shù)據(jù)視圖), 是與某一個應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示。 用戶對數(shù)據(jù)庫的操作,只能與外模式發(fā)生聯(lián)系, 按照外模式的結(jié)構(gòu)存儲操縱數(shù)據(jù)。,2 模式(又稱邏輯模式或概念模式) 全局?jǐn)?shù)據(jù)邏輯結(jié)構(gòu)和特征的描述, 3 內(nèi)模式(又稱存儲模式、物理模式) 數(shù)據(jù)物理結(jié)構(gòu)和存儲結(jié)構(gòu)的描述, 數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式。 一個數(shù)據(jù)庫中只有一個內(nèi)模式和一個模式, 但可有多個外模式。,圖1.5 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu),4 外模式/模式映象 外模式/模式映象定義了各外模式和模式之間的對應(yīng)關(guān)系 (在各自外模式的描述中定義)。 當(dāng)模式改變時, 由數(shù)據(jù)庫管理員對各個外模式/模式映象作相應(yīng)的改變, 而外模式仍然保持不變, 從而應(yīng)用程序不必修改, 保證了數(shù)據(jù)的邏輯獨立性。,5 模式/內(nèi)模式映象 模式/內(nèi)模式現(xiàn)象定義了數(shù)據(jù)全局邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)之間的對應(yīng)關(guān)系。 當(dāng)數(shù)據(jù)庫的存儲結(jié)構(gòu)發(fā)生改變時, 由數(shù)據(jù)庫管理員對模式/內(nèi)模式映象作相應(yīng)的改變, 而使模式保持不變, 從而保證了數(shù)據(jù)的物理獨立性。,第2章 數(shù)據(jù)模型,2.1 實體聯(lián)系模型 2.2 關(guān)系模型,根據(jù)應(yīng)用的不同目的,模型分為三個層次: 1、概念數(shù)據(jù)模型(信息模型)-按用戶的觀點對數(shù)據(jù)和信息建模,主要用于數(shù)據(jù)庫設(shè)計。 2、邏輯數(shù)據(jù)模型-按數(shù)據(jù)結(jié)構(gòu)表示數(shù)據(jù)建模,介于概念數(shù)據(jù)模型與物理數(shù)據(jù)模型之間。 3 、物理數(shù)據(jù)模型-按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,主要用于DBMS的實現(xiàn),數(shù)據(jù)模型,數(shù)據(jù)模型包含三部分內(nèi)容: 數(shù)據(jù)結(jié)構(gòu):層次模型、網(wǎng)狀模型、關(guān)系模型 數(shù)據(jù)操作:檢索(查)和更新(插、刪、改) 數(shù)據(jù)約束:保證數(shù)據(jù)正確、有效、相容,2.1 實體聯(lián)系模型(ER模型),概念模型:能方便、 準(zhǔn)確地表示出信息世界中的常用概念。 最常用的概念模型是實體-聯(lián)系模型( ER圖) 現(xiàn)實世界由一組稱作實體的基本對象及這些對象間的聯(lián)系組成。,2.1.1 基本概念 ER數(shù)據(jù)模型的主要概念: 實體集、 聯(lián)系集和屬性。 1 實體(entity):對現(xiàn)實世界中客觀存在并可互相區(qū)別的“事件”或“物體”的抽象。 實體:具體的人、 事、 物, 或抽象的概念或聯(lián)系, 例如, 學(xué)校中的每個人, 一個系、 一門課, 學(xué)生的一次選課。,實體集:具有相同類型及相同性質(zhì)(屬性)的實體集合。 例如, 全體學(xué)生是一個實體集, 全部課程也是一個實體集。,2 屬性(attribute) 實體具有的若干特征。 實體通過一組屬性來表示, 例如學(xué)生具有姓名、 學(xué)號等屬性。,3 聯(lián)系(relationship) 聯(lián)系是多個實體間的相互關(guān)聯(lián)。 例如學(xué)生實體與課程實體之間可有選課關(guān)系, 學(xué)生與教師之間可能有講課關(guān)系等。 這種實體與實體間的關(guān)系抽象為聯(lián)系。,圖2.1 實體間的聯(lián)系,實體集A和B之間的聯(lián)系分三種: (1) 一對一: A中的一個實體至多同B中的一個實體相聯(lián)系, B中的一個實體也至多同A中的一個實體相聯(lián)系, 如圖2.2(a)所示。 (2) 一對多: A中的一個實體可以同B中的任意數(shù)目的實體相聯(lián)系, 而B中的一個實體至多同A中的一個實體相聯(lián)系, 如圖2.2(b)所示。,(3) 多對多: A中的一個實體可以同B中任意數(shù)目的實體相聯(lián)系, B中的一個實體也可以同A中任意數(shù)目的實體相聯(lián)系, 如圖2.2(d)所示。,圖2.2 二元聯(lián)系集中映射的基數(shù)情況,聯(lián)系的屬性-聯(lián)系具有的描述性屬性。 例如, 學(xué)生和課程存在選課的聯(lián)系, 學(xué)生在課程上的成績可作為選課聯(lián)系的描述性屬性。 如圖2.3所示。,圖2.3 實體間聯(lián)系的屬性 (a) 二元聯(lián)系的描述性屬性; (b) 實例,4碼 (鍵key) 唯一區(qū)別給定實體集中的實體的屬性集 例如, 實體集課程的課程號屬性可以將不同課程區(qū)分開來, 因此, 課程號是一個碼。,2.2 關(guān) 系 模 型,關(guān)系模型是以集合論中的關(guān)系(relation)概念為基礎(chǔ)發(fā)展起來的數(shù)據(jù)模型。 在關(guān)系模型中, 無論是實體還是實體之間的聯(lián)系, 均由關(guān)系(表)來表示。 關(guān)系模型用二維表表示, 它由表頭、行和列組成。 表頭表框架,行-元組, 列-屬性, 元組中的一個屬性值為元組的一個分量,關(guān)系模型的優(yōu)點,1、概念單一,結(jié)構(gòu)簡單實體和聯(lián)系都用關(guān)系表示 2、對數(shù)據(jù)的操作(查、插、刪、改)結(jié)果也是關(guān)系 3、存取路徑對用戶透明 4、數(shù)據(jù)獨立性高、保密性好 5、簡化數(shù)據(jù)庫的開發(fā)工作,關(guān)系數(shù)據(jù)模型完整性約束 1 實體完整性約束 實體完整性約束:每個關(guān)系應(yīng)有一個主鍵, 每個元組主鍵的值應(yīng)惟一。 主鍵的值不能為NULL。 學(xué)生(學(xué)號, 姓名, 身份證號, 性別, 出生日期, 年齡, 籍貫, 入學(xué)時間, 系號, 學(xué)籍類型號, 專業(yè)號, 班級號)學(xué)號為主鍵, 則“學(xué)號” 唯一且不能取空值。 學(xué)生選課關(guān)系中選課(學(xué)號, 課程號, 成績) , “學(xué)號, 課程號”為主鍵.,2 參照完整性約束 是不同關(guān)系之間(或同一關(guān)系的不同元組間)的約束。 它不允許關(guān)系引用不存在的元組。,【例 1】 學(xué)生和專業(yè)其主鍵用下劃線標(biāo)識: 學(xué)生(學(xué)號, 姓名, 身份證號, 性別, 出生日期, 年齡, 籍貫, 入學(xué)時間, 系號, 學(xué)籍類型號, 專業(yè)號, 班級號) 專業(yè)(專業(yè)號, 專業(yè)名) 學(xué)生關(guān)系引用了專業(yè)關(guān)系的主鍵“專業(yè)號”。 學(xué)生關(guān)系中的“專業(yè)號”值必須是確實存在的專業(yè)的專業(yè)號或空。,3 用戶定義的完整性約束 針對某一具體關(guān)系數(shù)據(jù)庫的約束條件。 反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要求。 例如大學(xué)生的年齡取值范圍在1560之間等。,第3章 關(guān)系運算與SQL語言,3.1 關(guān)系代數(shù) 3.2 SQL語言,關(guān)系代數(shù)運算分為兩類: (1) 傳統(tǒng)的集合運算: 并、 交、 差和廣義笛卡爾乘積。 (2) 專門的關(guān)系運算: 選擇、 投影、 連接。,3.1 關(guān)系代數(shù) 運算對象是關(guān)系,運算結(jié)果也是關(guān)系。,3.1.1 傳統(tǒng)的集合運算 設(shè)兩個關(guān)系R和S均為n 元關(guān)系, 且相應(yīng)的屬性取自同一個域(R和S為同類型關(guān)系:屬性集相同、次序相同),1 并( )-插入 關(guān)系R和S的并為: RS=t|tRtS 其結(jié)果仍為n元(目)關(guān)系。 任取元組t, 當(dāng)且僅當(dāng)t屬于R或t屬于S時, t屬于RS。(一個元素在并集中只出現(xiàn)一次),2 差( )-刪除 關(guān)系R和S的差為: RS=t|tRt(S 其結(jié)果仍為n目關(guān)系。 任取元組t, 當(dāng)且僅當(dāng)t屬于R且t不屬于S時, t屬于R-S。,3 交( ) 關(guān)系R和S的交為: RS=t|tRtS =R-(R-S) 其結(jié)果仍為n目關(guān)系。 任取元組t, 當(dāng)且僅當(dāng)t既屬于R又屬于S時, t屬于RS。,4廣義笛卡爾乘積( ) 設(shè)R為m目關(guān)系, S為n目關(guān)系, 則R和S的廣義笛卡爾乘積為: RS=t|t=tr, tstrRtsS 其結(jié)果為m+n目關(guān)系。 元組的前m列是關(guān)系R的一個元組, 元組的后n列是關(guān)系S的一個元組。 若R有k1個元組, S有k2個元組, 則RS有k1k2個元組。,【例3.1】 給定兩個同類型關(guān)系R和S, 計算 RS, RS, RS,RS的結(jié)果。,圖3.2 傳統(tǒng)集合運算舉例,3.1.2 專門的關(guān)系運算 專門的關(guān)系運算包括選擇、 投影、 連接和除。 1 選擇( ) 設(shè)R是n目關(guān)系, F是條件, 其結(jié)果為 “真”或“假” , 則R的選擇操作定義為: F(R)=t|tRF(t)=true 即取出滿足條件F的所有元組。,F 如:學(xué)號11018 或 性別=男成績600 例如: 學(xué)號11018(student),取出學(xué)號大于11018的元組, 性別=男成績600(student)。 取出入學(xué)成績大于等于600分的男性。 選擇操作從行的角度進行運算。,2 投影( ) 設(shè)R是n目關(guān)系, R在其分量 ),即取出所有元組在特定分量,上的值。,例如, 對圖3.1可寫出: A, C(S),,圖3.3 投影說明舉例,3. 連接( ),連接, 從兩個關(guān)系的笛卡爾積中選取屬性間滿足一定條件的元組 R S = AB(RS) A和B:分別為R和S上度數(shù)相等且可比的屬性組 :比較運算符 從R和S的廣義笛卡爾積RS中選取在A屬性組(R關(guān)系)上的值與在B屬性組(S關(guān)系)上值滿足比較關(guān)系的元組。,自然連接 R和S在相同的屬性上值相等,R S,舉例,R,S,R S,等值連接 R S,自然連接 R S,圖3.4 選擇、 投影、 連接舉例,圖3.4 選擇、 投影、 連接舉例,3.2 SQL語言,SQL語言(Structured Query Language):結(jié)構(gòu)化查詢語言 集 數(shù)據(jù)定義語言DDL 數(shù)據(jù)操縱語言DML 數(shù)據(jù)控制語言DCL 的功能于一體,設(shè)有如下關(guān)系表: 則下列操作中正確的是 A)TRS B)TRS C)TRS D)TR/S,R A B C 2 2 3 3 1 3 S A B C 1 1 2 T A B C 1 1 2 2 2 3 3 1 3,B,第4章,數(shù)據(jù)庫設(shè)計與管理,4.1 數(shù)據(jù)庫設(shè)計概述,數(shù)據(jù)庫設(shè)計:對于一個給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及應(yīng)用系統(tǒng),使之能有效地存儲數(shù)據(jù),滿足各種用戶的應(yīng)用需求。,數(shù)據(jù)庫設(shè)計方法,1、面向數(shù)據(jù)的方法:以信息需求為主,兼顧處理需求。 2、面向過程的方法:以處理需求為主,兼顧信息需求。 常用面向數(shù)據(jù)的生命周期法,分4個階段: 需求分析,概念設(shè)計,邏輯設(shè)計,物理設(shè)計。,數(shù)據(jù)庫設(shè)計應(yīng)具有的知識: 數(shù)據(jù)庫的基本知識和數(shù)據(jù)庫設(shè)計技術(shù) 程序設(shè)計方法 軟件工程原理 領(lǐng)域知識,4.2 數(shù)據(jù)庫設(shè)計的一般過程,1 、需求分析階段數(shù)據(jù)字典 2 、概念設(shè)計階段E-R圖 3 、邏輯設(shè)計階段關(guān)系模型 4 、物理設(shè)計階段存儲安排、索引計劃 5 、實施階段創(chuàng)建數(shù)據(jù)庫、數(shù)據(jù)導(dǎo)入、調(diào)試 6、 運行和維護,1、需求分析,需求收集和分析 (1) .信息要求 (2) .處理要求 (3) .安全性和完整性要求 結(jié)果:數(shù)據(jù)字典(通常包括數(shù)據(jù)項、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲和處理過程五個部分 ),2、概念設(shè)計,對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型。 結(jié)果:E-R圖 概念設(shè)計常用方法: (1)視圖集成法:首先根據(jù)需求分析的結(jié)果設(shè)計各個局部E-R圖;然后集成并優(yōu)化局部視圖。 (2)集中式設(shè)計 :直接按總體概念結(jié)構(gòu)設(shè)計。,3、邏輯設(shè)計,將概念設(shè)計轉(zhuǎn)換為關(guān)系模型,E-R圖轉(zhuǎn)換為關(guān)系模式的原則: (1) 一個實體集轉(zhuǎn)換為一個關(guān)系模式。 (2)一個m:n聯(lián)系轉(zhuǎn)換為一個關(guān)系模式。 (3)一個1

溫馨提示

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

評論

0/150

提交評論