數(shù)據(jù)庫技術課件Chapter1數(shù)據(jù)庫原理·緒論_第1頁
數(shù)據(jù)庫技術課件Chapter1數(shù)據(jù)庫原理·緒論_第2頁
數(shù)據(jù)庫技術課件Chapter1數(shù)據(jù)庫原理·緒論_第3頁
數(shù)據(jù)庫技術課件Chapter1數(shù)據(jù)庫原理·緒論_第4頁
數(shù)據(jù)庫技術課件Chapter1數(shù)據(jù)庫原理·緒論_第5頁
已閱讀5頁,還剩111頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

數(shù)據(jù)庫原理

PrincipleofDatabaseSystems劉潔liujie@2教材及參考書王珊,薩師煊:數(shù)據(jù)庫系統(tǒng)概論(第四版),高等教育出版社,2006.5Jeffrey.D.Ullman,JenniferWidom.

AFirstCourseinDatabaseSystems(3rdEdition),2007C.J.Date.AnIntroductiontoDatabaseSystem(Ed.7),Addison-Wesley,20003內容安排基礎篇第一章緒論(2)第二章關系數(shù)據(jù)庫(6)第三章關系數(shù)據(jù)庫標準語言SQL(8)第四章數(shù)據(jù)庫安全性(2)第五章數(shù)據(jù)庫完整性(4)4內容安排設計與應用開發(fā)篇第六章關系數(shù)據(jù)理論(6)第七章數(shù)據(jù)庫設計(6)第八章數(shù)據(jù)庫編程(2)系統(tǒng)篇第九章關系查詢處理和查詢優(yōu)化(4)第十章數(shù)據(jù)庫恢復技術(4)第十一章并發(fā)控制(4)5上課時間、地點周2/56節(jié)/7310周5雙周/34節(jié)/4604周5單周/34節(jié)/(周五34單從第三周開始在信南B317)6成績構成期末考試卷面成績70%平日成績10%作業(yè)10%實驗10%7第一章緒論1.1數(shù)據(jù)庫系統(tǒng)概述1.2數(shù)據(jù)模型1.3數(shù)據(jù)庫系統(tǒng)結構1.4數(shù)據(jù)庫系統(tǒng)的組成1.5小結8數(shù)據(jù)(Data)數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲的基本對象數(shù)據(jù)的定義描述事物的符號記錄數(shù)據(jù)的種類數(shù)字、文本、圖形、圖像、音頻、視頻……數(shù)據(jù)的語義數(shù)據(jù)的含義數(shù)據(jù)的特點數(shù)據(jù)與其語義是不可分的9數(shù)據(jù)庫(Database)定義數(shù)據(jù)庫是長期儲存在計算機內、有組織的、可共享的大量數(shù)據(jù)的集合。數(shù)據(jù)庫的基本特征數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存冗余度較小數(shù)據(jù)獨立性較高易擴展可為各種用戶共享10數(shù)據(jù)庫管理系統(tǒng)(DBMS)定義數(shù)據(jù)庫管理系統(tǒng)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。數(shù)據(jù)庫管理系統(tǒng)和操作系統(tǒng)一樣是計算機的基礎軟件,是一個大型復雜的軟件系統(tǒng)。11DBMS的主要功能數(shù)據(jù)定義功能數(shù)據(jù)定義語言(DDL),定義數(shù)據(jù)庫中的數(shù)據(jù)對象數(shù)據(jù)組織、存儲和管理數(shù)據(jù)操縱功能數(shù)據(jù)操縱語言(DML),實現(xiàn)對數(shù)據(jù)庫的基本操作

(查詢、插入、刪除和修改)數(shù)據(jù)庫的事務管理和運行管理數(shù)據(jù)庫的建立和維護功能其他功能,e.g.數(shù)據(jù)轉換12數(shù)據(jù)庫系統(tǒng)定義數(shù)據(jù)庫系統(tǒng)是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)。構成數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)應用系統(tǒng)數(shù)據(jù)庫管理員13應用系統(tǒng)應用開發(fā)工具DBMS操作系統(tǒng)數(shù)據(jù)庫在計算機系統(tǒng)中的地位硬件編譯系統(tǒng)141.1.2數(shù)據(jù)管理技術的產生和發(fā)展什么是數(shù)據(jù)管理?對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索和維護,數(shù)據(jù)管理是數(shù)據(jù)處理的中心問題。數(shù)據(jù)管理技術的發(fā)展動力應用需求的推動,計算機硬件的發(fā)展,計算機軟件的發(fā)展數(shù)據(jù)管理技術的發(fā)展過程人工管理階段(20世紀40年代中—50年代中)文件系統(tǒng)階段(20世紀50年代末—60年代中)數(shù)據(jù)庫系統(tǒng)階段(20世紀60年代末—現(xiàn)在)15人工管理階段20世紀40年代中—50年代中產生背景應用需求:科學計算硬件水平:無直接存取存儲設備軟件水平:沒有操作系統(tǒng)處理方式:批處理數(shù)據(jù)的管理者:用戶(程序員),數(shù)據(jù)不保存數(shù)據(jù)面向的對象:某一應用程序數(shù)據(jù)的共享程度:無共享、冗余度極大數(shù)據(jù)的獨立性:不獨立,完全依賴于程序數(shù)據(jù)的結構化:無結構數(shù)據(jù)控制能力:應用程序自己控制16二、文件系統(tǒng)階段20世紀50年代末—60年代中產生背景應用需求:科學計算、數(shù)據(jù)管理硬件水平:磁盤、磁鼓軟件水平:有文件系統(tǒng)處理方式:聯(lián)機實時處理、批處理數(shù)據(jù)的管理者:文件系統(tǒng),數(shù)據(jù)可長期保存數(shù)據(jù)面向的對象:某一應用程序數(shù)據(jù)的共享程度:共享性差、冗余度大數(shù)據(jù)的結構化:記錄內有結構,整體無結構數(shù)據(jù)的獨立性:獨立性差,數(shù)據(jù)的邏輯結構改變必須修改應用程序數(shù)據(jù)控制能力:應用程序自己控制17數(shù)據(jù)庫系統(tǒng)階段20世紀60年代末以來產生背景應用背景:大規(guī)模數(shù)據(jù)管理硬件背景:大容量磁盤、磁盤陣列軟件背景:有數(shù)據(jù)庫管理系統(tǒng)處理方式:聯(lián)機實時處理、分布處理、批處理數(shù)據(jù)的管理者:數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)面向的對象:現(xiàn)實世界數(shù)據(jù)的共享程度:共享性高、冗余度小數(shù)據(jù)的結構化:整體結構化,用數(shù)據(jù)模型描述數(shù)據(jù)的獨立性:具有高度的物理獨立性和一定的邏輯獨立性數(shù)據(jù)控制能力:DBMS提供數(shù)據(jù)安全性、完整性、并發(fā)控制和恢復能力181.1.3數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)結構化數(shù)據(jù)的共享性高,冗余度低,易擴充數(shù)據(jù)獨立性高數(shù)據(jù)由DBMS統(tǒng)一管理和控制19數(shù)據(jù)結構化整體數(shù)據(jù)的結構化是數(shù)據(jù)庫的主要特征之一整體結構化不再僅僅針對某一個應用,而是面向全組織不僅數(shù)據(jù)內部結構化,而且整體是結構化的,數(shù)據(jù)之間具有聯(lián)系數(shù)據(jù)庫中實現(xiàn)的是數(shù)據(jù)的真正結構化數(shù)據(jù)的結構用數(shù)據(jù)模型描述,無需程序定義和解釋數(shù)據(jù)可以變長數(shù)據(jù)的最小存取單位是數(shù)據(jù)項20數(shù)據(jù)的共享性高,冗余度低,易擴充數(shù)據(jù)庫系統(tǒng)從整體角度看待和描述數(shù)據(jù),數(shù)據(jù)面向整個系統(tǒng),可以被多個用戶、多個應用共享使用。數(shù)據(jù)共享的好處減少數(shù)據(jù)冗余,節(jié)約存儲空間避免數(shù)據(jù)之間的不相容性與不一致性使系統(tǒng)易于擴充21數(shù)據(jù)獨立性高物理獨立性指用戶的應用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。當數(shù)據(jù)的物理存儲改變了,應用程序不用改變。邏輯獨立性指用戶的應用程序與數(shù)據(jù)庫的邏輯結構是相互獨立的。數(shù)據(jù)的邏輯結構改變了,用戶程序也可以不變。數(shù)據(jù)獨立性是由DBMS的二級映像功能來保證的。22數(shù)據(jù)由DBMS統(tǒng)一管理和控制DBMS提供的數(shù)據(jù)控制功能數(shù)據(jù)的安全性(Security)保護,保護數(shù)據(jù),以防止不合法的使用造成的數(shù)據(jù)的泄密和破壞。數(shù)據(jù)的完整性(Integrity),檢查將數(shù)據(jù)控制在有效的范圍內,或保證數(shù)據(jù)之間滿足一定的關系。并發(fā)(Concurrency)控制,對多用戶的并發(fā)操作加以控制和協(xié)調,防止相互干擾而得到錯誤的結果。數(shù)據(jù)庫恢復(Recovery),將數(shù)據(jù)庫從錯誤狀態(tài)恢復到某一已知的正確狀態(tài)。23第一章緒論1.1數(shù)據(jù)庫系統(tǒng)概述1.2數(shù)據(jù)模型1.3數(shù)據(jù)庫系統(tǒng)結構1.4數(shù)據(jù)庫系統(tǒng)的組成1.5小結241.2數(shù)據(jù)模型1.2.1兩大類數(shù)據(jù)模型1.2.2數(shù)據(jù)模型的組成要素1.2.3概念模型1.2.4最常用的數(shù)據(jù)模型1.2.5層次模型1.2.6網(wǎng)狀模型1.2.7關系模型25數(shù)據(jù)模型在數(shù)據(jù)庫中用數(shù)據(jù)模型這個工具來抽象、表示和處理現(xiàn)實世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實世界的模擬。數(shù)據(jù)模型應滿足三方面要求能比較真實地模擬現(xiàn)實世界容易為人所理解便于在計算機上實現(xiàn)261.2.1兩大類數(shù)據(jù)模型概念模型,也稱信息模型,它是按用戶的觀點來對數(shù)據(jù)和信息建模,用于數(shù)據(jù)庫設計。邏輯模型和物理模型邏輯模型主要包括層次模型、網(wǎng)狀模型、關系模型、面向對象模型和對象關系模型等,按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,用于DBMS實現(xiàn)。物理模型是對數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內部的表示方式和存取方法,在磁盤或磁帶上的存儲方式和存取方法。271.2.2數(shù)據(jù)模型的組成要素數(shù)據(jù)結構數(shù)據(jù)操作完整性約束條件28一、數(shù)據(jù)結構定義:描述數(shù)據(jù)庫的組成對象以及對象之間的聯(lián)系。描述的內容與對象的類型、內容、性質有關與數(shù)據(jù)之間聯(lián)系有關的對象刻畫數(shù)據(jù)模型性質最重要的方面數(shù)據(jù)結構是對系統(tǒng)靜態(tài)特性的描述29二、數(shù)據(jù)操作定義數(shù)據(jù)操作是對數(shù)據(jù)庫中各種對象(型)的實例(值)允許執(zhí)行的操作及有關的操作規(guī)則。數(shù)據(jù)操作的類型查詢更新(包括插入、刪除、修改)30數(shù)據(jù)操作數(shù)據(jù)模型對操作的定義操作的確切含義操作符號操作規(guī)則(如優(yōu)先級)實現(xiàn)操作的語言數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述31三、數(shù)據(jù)的完整性約束條件一組完整性規(guī)則的集合。完整性規(guī)則:給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。321.2.3概念模型信息世界中的基本概念兩個實體型之間的聯(lián)系兩個以上實體型之間的聯(lián)系單個實體型內的聯(lián)系概念模型的一種表示方法:實體—聯(lián)系方法一個實例33概念模型用途概念模型用于信息世界的建模現(xiàn)實世界到機器世界的一個中間層次數(shù)據(jù)庫設計的有力工具數(shù)據(jù)庫設計人員和用戶之間進行交流的語言概念模型的基本要求較強的語義表達能力能夠方便、直接地表達應用中的各種語義知識簡單、清晰、易于用戶理解34一、信息世界中的基本概念實體(Entity)客觀存在并可相互區(qū)別的事物稱為實體具體的人、事、物抽象的概念或聯(lián)系屬性(Attribute)實體所具有的某一特性稱為屬性一個實體可以由若干個屬性來刻畫碼(Key)唯一標識實體的屬性集稱為碼35信息世界中的基本概念域(Domain)屬性的取值范圍稱為該屬性的域實體型(EntityType)用實體名及其屬性名集合來抽象和刻畫同類實體稱為實體型實體集(EntitySet)同一類型實體的集合稱為實體集36信息世界中的基本概念聯(lián)系(Relationship)現(xiàn)實世界中事物內部以及事物之間的聯(lián)系在信息世界中反映為實體內部的聯(lián)系和實體之間的聯(lián)系。實體內部的聯(lián)系通常是指組成實體的各屬性之間的聯(lián)系。實體之間的聯(lián)系通常是指不同實體集之間的聯(lián)系。37二、兩個實體型之間的聯(lián)系一對一聯(lián)系(1:1)如果對于實體集A中的每一個實體,實體集B中至多有一個(也可以沒有)實體與之聯(lián)系,反之亦然,則稱實體集A與實體集B具有一對一聯(lián)系,記為1:1。一對多聯(lián)系(1:n)如果對于實體集A中的每一個實體,實體集B中有n個實體(n≥0)與之聯(lián)系,反之,對于實體集B中的每一個實體,實體集A中至多只有一個實體與之聯(lián)系,則稱實體集A與實體集B有一對多聯(lián)系,記為1:n。38兩個實體型之間的聯(lián)系多對多聯(lián)系(m:n)如果對于實體集A中的每一個實體,實體集B中有n個實體(n≥0)與之聯(lián)系,反之,對于實體集B中的每一個實體,實體集A中也有m個實體(m≥0)與之聯(lián)系,則稱實體集A與實體B具有多對多聯(lián)系,記為m:n。39三、兩個以上實體型之間的聯(lián)系一對多聯(lián)系若實體型E1,E2,...,En存在聯(lián)系,對于實體型Ej(j=1,2,...,i-1,i+1,...,n)中的給定實體,最多只和Ei中的一個實體相聯(lián)系,則我們說Ei與E1,E2,...,Ei-1,Ei+1,...,En之間的聯(lián)系是一對多的。40兩個以上實體型之間的聯(lián)系課程、教師與參考書三個實體型一門課程可以有若干個教師講授每一個教師只講授一門課程每門課程使用若干本參考書每一本參考書只供一門課程使用41四、單個實體型內的聯(lián)系一對一聯(lián)系一對多聯(lián)系多對多聯(lián)系42五、概念模型的一種表示方法實體-聯(lián)系方法(E-R方法)用E-R圖來描述現(xiàn)實世界的概念模型E-R方法也稱為E-R模型43E-R圖實體型用矩形表示,矩形框內寫明實體名。屬性用橢圓形表示,并用無向邊將其與相應的實體連接起來。學生教師學生學號姓名年齡專業(yè)44E-R圖聯(lián)系用菱形表示,菱形框內寫明聯(lián)系名,并用無向邊分別與有關實體連接起來,同時在無向邊旁標上聯(lián)系的類型(1:1、1:n或m:n)。45聯(lián)系的表示方法46聯(lián)系的屬性聯(lián)系本身也是一種實體型,也可以有屬性。如果一個聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來。47六、一個實例用E-R圖表示某個工廠物資管理的概念模型(Page17)工作職工n1領導n1供應商項目供應mnp供應量倉庫零件庫存mn庫存量481.2.4最常用的數(shù)據(jù)模型非關系模型層次模型(HierarchicalModel)網(wǎng)狀模型(NetworkModel)關系模型(RelationalModel)面向對象模型(ObjectOrientedModel)對象關系模型(ObjectRelationalModel)491.2.5層次模型層次模型是數(shù)據(jù)庫系統(tǒng)中最早出現(xiàn)的數(shù)據(jù)模型層次數(shù)據(jù)庫系統(tǒng)的典型代表是IBM公司的IMS(InformationManagementSystem)數(shù)據(jù)庫管理系統(tǒng)層次模型用樹形結構來表示各類實體以及實體間的聯(lián)系50一、層次數(shù)據(jù)模型的數(shù)據(jù)結構在數(shù)據(jù)庫中滿足下面兩個條件的基本層次聯(lián)系的集合為層次模型有且只有一個結點沒有雙親結點,這個結點稱為根結點根以外的其它結點有且只有一個雙親結點層次模型中的幾個術語根結點,雙親結點,兄弟結點,葉結點51層次模型的示例52層次模型的特點結點的雙親是唯一的只能直接處理一對多的實體聯(lián)系每個記錄類型可以定義一個排序字段,也稱為碼字段任何記錄值只有按其路徑查看時,才能顯出它的全部意義沒有一個子女記錄值能夠脫離雙親記錄值而獨立存在53二、多對多聯(lián)系在層次模型中的表示用層次模型間接表示多對多聯(lián)系方法將多對多聯(lián)系分解成一對多聯(lián)系分解方法冗余結點法虛擬結點法54三、層次模型的數(shù)據(jù)操縱查詢插入刪除更新55層次模型的完整性約束條件無相應的雙親結點值就不能插入子女結點值如果刪除雙親結點值,則相應的子女結點值也被同時刪除更新操作時,應更新所有相應記錄,以保證數(shù)據(jù)的一致性56四、層次數(shù)據(jù)模型的存儲結構鄰接法按照層次樹前序遍歷的順序把所有記錄值依次鄰接存放,即通過物理空間的位置相鄰來實現(xiàn)層次順序。鏈接法用指針引來反映數(shù)據(jù)之間的層次聯(lián)系子女-兄弟鏈接法層次序列鏈接法57層次數(shù)據(jù)模型的存儲結構子女-兄弟鏈接法每個記錄設兩類指針,分別指向最左邊的子女(每個記錄型對應一個)和最近的兄弟58層次數(shù)據(jù)模型的存儲結構層次序列鏈接法按樹的前序穿越順序鏈接各記錄值A1B1B4B6C3C5C7C14C2C959五、層次模型的優(yōu)缺點優(yōu)點層次模型的數(shù)據(jù)結構比較簡單清晰查詢效率高,性能優(yōu)于關系模型,不低于網(wǎng)狀模型層次數(shù)據(jù)模型提供了良好的完整性支持缺點現(xiàn)實世界中很多聯(lián)系是非層次的,e.g.多對多聯(lián)系對插入和刪除操作的限制多,應用程序的編寫比較復雜查詢子女結點必須通過雙親結點由于結構嚴密,層次命令趨于程序化601.2.6網(wǎng)狀模型網(wǎng)狀數(shù)據(jù)庫系統(tǒng)采用網(wǎng)狀模型作為數(shù)據(jù)的組織方式典型代表是DBTG系統(tǒng)亦稱CODASYL系統(tǒng)70年代由DBTG提出的一個系統(tǒng)方案奠定了數(shù)據(jù)庫系統(tǒng)的基本概念、方法和技術611.網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構網(wǎng)狀模型滿足兩個條件的基本層次聯(lián)系的集合允許一個以上的結點無雙親一個結點可以有多于一個的雙親62網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構表示方法(與層次數(shù)據(jù)模型相同)實體型:用記錄類型描述,每個結點表示一個記錄類型(實體)屬性:用字段描述,每個記錄類型可包含若干個字段聯(lián)系:用結點之間的連線表示記錄類型(實體)之間的一對多的父子聯(lián)系63網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構網(wǎng)狀模型與層次模型的區(qū)別網(wǎng)狀模型允許多個結點沒有雙親結點網(wǎng)狀模型允許結點有多個雙親結點網(wǎng)狀模型允許兩個結點之間有多種聯(lián)系網(wǎng)狀模型可以更直接地去描述現(xiàn)實世界層次模型實際上是網(wǎng)狀模型的一個特例64網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構網(wǎng)狀模型中子女結點與雙親結點的聯(lián)系可以不唯一,要為每個聯(lián)系命名,并指出與該聯(lián)系有關的雙親記錄和子女記錄。65網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構多對多聯(lián)系在網(wǎng)狀模型中的表示用網(wǎng)狀模型間接表示多對多聯(lián)系方法:將多對多聯(lián)系直接分解成一對多聯(lián)系66網(wǎng)狀數(shù)據(jù)模型的操縱與完整性約束網(wǎng)狀數(shù)據(jù)庫系統(tǒng)(如DBTG)對數(shù)據(jù)操縱加了一些限制,提供了一定的完整性約束碼:唯一標識記錄的數(shù)據(jù)項的集合一個聯(lián)系中雙親記錄與子女記錄之間是一對多聯(lián)系支持雙親記錄和子女記錄之間某些約束條件67三、網(wǎng)狀數(shù)據(jù)模型的存儲結構關鍵如何實現(xiàn)記錄之間的聯(lián)系常用方法:鏈接法單向鏈接(Page27)雙向鏈接環(huán)狀鏈接向首鏈接68網(wǎng)狀數(shù)據(jù)模型的優(yōu)缺點優(yōu)點能夠更為直接地描述現(xiàn)實世界,如一個結點可以有多個雙親具有良好的性能,存取效率較高缺點結構比較復雜,而且隨著應用環(huán)境的擴大,數(shù)據(jù)庫的結構就變得越來越復雜,不利于最終用戶掌握DDL、DML語言復雜,用戶不容易使用691.2.7關系模型關系數(shù)據(jù)庫系統(tǒng)采用關系模型作為數(shù)據(jù)的組織方式1970年美國IBM公司SanJose研究室的研究員E.F.Codd首次提出了數(shù)據(jù)庫系統(tǒng)的關系模型計算機廠商新推出的數(shù)據(jù)庫管理系統(tǒng)幾乎都支持關系模型70一、關系數(shù)據(jù)模型的數(shù)據(jù)結構在用戶觀點下,關系模型中數(shù)據(jù)的邏輯結構是一張二維表,它由行和列組成。關系(Relation)一個關系對應通常說的一張表元組(Tuple)表中的一行即為一個元組屬性(Attribute)表中的一列即為一個屬性,給每一個屬性起一個名稱即屬性名71關系數(shù)據(jù)模型的數(shù)據(jù)結構碼(Key)表中的某個屬性組,它可以唯一確定一個元組域(Domain)屬性的取值范圍分量元組中的一個屬性值關系模式對關系的描述關系名(屬性1,屬性2,…,屬性n)學生(學號,姓名,年齡,性別,系,年級)72關系數(shù)據(jù)模型的數(shù)據(jù)結構關系必須是規(guī)范化的,滿足一定的規(guī)范條件最基本的規(guī)范條件:關系的每一個分量必須是一個不可分的數(shù)據(jù)項,不允許表中還有表73術語對比74二、關系數(shù)據(jù)模型的操作數(shù)據(jù)操作是集合操作,操作對象和操作結果都是關系,即若干元組的集合查詢插入刪除更新存取路徑對用戶隱蔽,用戶只要指出“做什么”,不必詳細說明“怎么做”75關系數(shù)據(jù)模型的完整性約束實體完整性參照完整性用戶定義的完整性76三、關系數(shù)據(jù)模型的存儲結構實體及實體間的聯(lián)系都用表來表示表以文件形式存儲有的DBMS一個表對應一個操作系統(tǒng)文件有的DBMS自己設計文件結構77四、關系數(shù)據(jù)模型的優(yōu)點建立在嚴格的數(shù)學概念的基礎上概念單一實體和實體之間的聯(lián)系都用關系來表示對數(shù)據(jù)的檢索結果也是關系關系模型的存取路徑對用戶透明具有更高的數(shù)據(jù)獨立性,更好的安全保密性簡化了程序員的工作和數(shù)據(jù)庫開發(fā)建立的工作78關系數(shù)據(jù)模型的缺點存取路徑對用戶透明導致查詢效率往往不如非關系數(shù)據(jù)模型為提高性能,必須對用戶的查詢請求進行優(yōu)化增加了開發(fā)DBMS的難度79第一章緒論1.1數(shù)據(jù)庫系統(tǒng)概述1.2數(shù)據(jù)模型1.3數(shù)據(jù)庫系統(tǒng)結構1.4數(shù)據(jù)庫系統(tǒng)的組成1.5小結801.3數(shù)據(jù)庫系統(tǒng)結構1.3.1數(shù)據(jù)庫系統(tǒng)模式的概念1.3.2數(shù)據(jù)庫系統(tǒng)的三級模式結構1.3.3數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性811.3.1數(shù)據(jù)庫系統(tǒng)模式的概念“型”和“值”的概念型(Type):對某一類數(shù)據(jù)的結構和屬性的說明值(Value):型的一個具體賦值學生記錄型:(學號,姓名,性別,系別,年齡,籍貫)一個記錄值:(900201,李明,男,計算機,22,江蘇)82數(shù)據(jù)庫系統(tǒng)模式的概念模式(Schema)數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結構和特征的描述型的描述模式是相對穩(wěn)定的反映的是數(shù)據(jù)的結構及其聯(lián)系實例(Instance)模式的一個具體值反映數(shù)據(jù)庫某一時刻的狀態(tài)同一個模式可以有很多實例實例隨數(shù)據(jù)庫中的數(shù)據(jù)的更新而變動831.3.2數(shù)據(jù)庫系統(tǒng)的三級模式結構數(shù)據(jù)庫系統(tǒng)的三級模式結構是指數(shù)據(jù)庫系統(tǒng)是由外模式(ExternalSchema)、模式(Schema)、內模式(InternalSchema)三級構成。84數(shù)據(jù)庫系統(tǒng)的三級模式結構數(shù)據(jù)庫內模式模式外模式1外模式2外模式3應用A應用B應用C應用D應用E內模式/模式映像外模式/模式映像85一、模式(Schema)模式(也稱邏輯模式)數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結構和特征的描述所有用戶的公共數(shù)據(jù)視圖,綜合了所有用戶的需求一個數(shù)據(jù)庫只有一個模式模式的地位:數(shù)據(jù)庫系統(tǒng)模式結構的中間層與數(shù)據(jù)的物理存儲細節(jié)和硬件環(huán)境無關與具體的應用程序、開發(fā)工具及高級程序設計語言無關86模式的定義數(shù)據(jù)的邏輯結構數(shù)據(jù)項:數(shù)據(jù)項的名字、類型、取值范圍等數(shù)據(jù)之間的聯(lián)系數(shù)據(jù)有關的安全性、完整性要求87二、外模式(ExternalSchema)外模式(也稱子模式或用戶模式)數(shù)據(jù)庫用戶(包括應用程序員和最終用戶)能夠看見和使用的局部數(shù)據(jù)的邏輯結構和特征的描述數(shù)據(jù)庫用戶的數(shù)據(jù)視圖與某一應用有關的數(shù)據(jù)的邏輯表示88外模式外模式的地位:介于模式與應用之間模式與外模式的關系:一對多外模式通常是模式的子集一個數(shù)據(jù)庫可以有多個外模式。反映了不同的用戶的應用需求、看待數(shù)據(jù)的方式、對數(shù)據(jù)保密的要求對模式中同一數(shù)據(jù),在外模式中的結構、類型、長度、保密級別等都可以不同89外模式外模式與應用的關系:一對多同一外模式也可以為某一用戶的多個應用系統(tǒng)所使用但一個應用程序只能使用一個外模式外模式的用途保證數(shù)據(jù)庫安全性的一個有力措施每個用戶只能看見和訪問所對應的外模式中的數(shù)據(jù),數(shù)據(jù)庫中的其余數(shù)據(jù)是不可見的。90三、內模式(InternalSchema)內模式(也稱存儲模式StorageSchema)數(shù)據(jù)物理結構和存儲方式的描述數(shù)據(jù)在數(shù)據(jù)庫內部的表示方式記錄的存儲方式索引的組織方式數(shù)據(jù)是否壓縮存儲數(shù)據(jù)是否加密數(shù)據(jù)存儲記錄結構的規(guī)定一個數(shù)據(jù)庫只有一個內模式91內模式例如:學生記錄按堆存儲(a)、按學號升序存儲(b)、按照學生年齡聚簇存放(c)。921.3.3數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性三級模式是對數(shù)據(jù)的三個抽象級別二級映像在DBMS內部實現(xiàn)這三個抽象層次的聯(lián)系和轉換外模式/模式映像模式/內模式映像93一、外模式/模式映像模式:描述的是數(shù)據(jù)的全局邏輯結構外模式:描述的是數(shù)據(jù)的局部邏輯結構同一個模式可以有任意多個外模式每一個外模式,數(shù)據(jù)庫系統(tǒng)都有一個外模式/模式映像,定義外模式與模式之間的對應關系映像定義通常包含在各自外模式的描述中94外模式/模式映像如何保證數(shù)據(jù)的邏輯獨立性當模式改變時,數(shù)據(jù)庫管理員修改有關的外模式/模式映像,使外模式保持不變應用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨立性,簡稱數(shù)據(jù)的邏輯獨立性。95二、模式/內模式映像模式/內模式映像定義了數(shù)據(jù)全局邏輯結構與存儲結構之間的對應關系。數(shù)據(jù)庫中模式/內模式映像是唯一的該映像定義通常包含在模式描述中96模式/內模式映像如何保證數(shù)據(jù)的物理獨立性當數(shù)據(jù)庫的存儲結構改變了(例如選用了另一種存儲結構),數(shù)據(jù)庫管理員修改模式/內模式映像,使模式保持不變。應用程序不受影響。保證了數(shù)據(jù)與程序的物理獨立性,簡稱數(shù)據(jù)的物理獨立性。97模式/內模式映像數(shù)據(jù)庫模式即全局邏輯結構是數(shù)據(jù)庫的中心與關鍵獨立于數(shù)據(jù)庫的其他層次設計數(shù)據(jù)庫模式結構時應首先確定數(shù)據(jù)庫的邏輯模式98模式/內模式映像數(shù)據(jù)庫的內模式依賴于它的全局邏輯結構獨立于數(shù)據(jù)庫的用戶視圖,即外模式獨立于具體的存儲設備將全局邏輯結構中所定義的數(shù)據(jù)結構及其聯(lián)系按照一定的物理存儲策略進行組織,以達到較好的時間與空間效率99模式/內模式映像數(shù)據(jù)庫的外模式面向具體的應用程序定義在邏輯模式之上獨立于存儲模式和存儲設備當應用需求發(fā)生較大變化,相應外模式不能滿足其視圖要求時,該外模式就得做相應改動設計外模式時應充分考慮到應用的擴充性100特定的應用程序在外模式描述的數(shù)據(jù)結構上編制的依賴于特定的外模式與數(shù)據(jù)庫的模式和存儲結構獨立不同的應用程序有時可以共用同一個外模式101模式/內模式映像數(shù)據(jù)庫的二級映像保證了數(shù)據(jù)庫外模式的穩(wěn)定性從底層保證了應

溫馨提示

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

最新文檔

評論

0/150

提交評論